java-(Oracle)-Oracle,plsqldev,Sql语法,Oracle函数

卸载好注册表,然后安装11g

每次在执行orderby的时候相当于是做了全排序,思考全排序的效率
会比较耗费系统的资源,因此选择在业务不太繁忙的时候进行

sql 复制代码
--给表添加注释
comment on table emp is '雇员表'
--给列添加注释;
comment on column emp.empno is '雇员工号';

select empno,ename,job
from emp
where deptno=10;

select distinct deptno from emp;

select e.empno 雇员编号,e.ename 雇员名称,e.job 雇员工作
from emp e
where e.deptno=10;

在sql中的null值必须要用is和is not来判断
between
exists
nvl(arg1,arg2),如何arg1是空,则返回arg2,如果arg1不为空,则返回arg1
dual是oracle数据库中的一张虚拟表,没有实际的数据,可以用来做测试

sql 复制代码
/*
--给表添加注释
comment on table emp is '雇员表'
--给列添加注释;
comment on column emp.empno is '雇员工号';

select empno,ename,job
from emp
where deptno=10;

select distinct deptno from emp;

select e.empno 雇员编号,e.ename 雇员名称,e.job 雇员工作
from emp e
where e.deptno=10;
*/
select * from emp where deptno <>20;
select sal from emp where sal> any(1000,1500,3000);
select sal from emp where sal> some(1000,1500,3000);
select sal from emp where sal> all(1000,1500,3000);

select * from emp where comm is null;
select * from emp where comm  is not null;
select * from emp where sal between 1500 and 3000;
select * from emp where deptno in(10,20);
select * from emp where deptno =10 or deptno= 20;
--and的优先级高于or
select *
from emp e
where exists(select deptno
                    from dept d
                    where (d.deptno=10 or d.deptno=20) and 
                    e.deptno=d.deptno)
select * from emp where ename like('S%');
select * from emp where ename like('S%T_');
select * from emp where ename like('%\%%')escape('\');
--escape转义字符
select * from emp where ename like('JO%');
select * from emp order by sal;
select * from emp order by sal desc;
select * from emp order by sal desc ,ename asc;

--计算字段
select 'my name is'||ename  from emp;
select concat('my name is',ename) from emp;
select ename,(e.sal+nvl(e.comm,0))*12 from emp e
select 100+null from dual
--并集union
--全集 union all
select * from emp where ename like('S%') minus
select * from emp where sal between 300 and 2000;

函数

组函数又称为聚合函数
输入多个值,最终只会返回一个值

sql 复制代码
select sum(sal) from emp;
select count(*) from emp;
select initcap(ename) from emp;
select upper(ename) from emp;
select lower(ename )from emp;
select lpad(ename,10,'*')from emp;
select rpad(ename,10,'*')from emp;
select trim(ename) from emp;
select ltrim(ename) from emp;
select rtrim(ename) from emp;
select instr(ename,'A') from emp;
select length(ename) from emp;
select substr(ename,0,2)from emp;
select replace('abcdefg','ab','hehe')from emp;
select round(123.129,2) from dual;
select trunc(123.128,2) from dual;
select mod(10,4)from dual;
select ceil(10.555)from dual;
select floor(1255.222)from dual;
相关推荐
J-Tony115 小时前
【Redis】 Redis 是单线程还是多线程
服务器·数据库·mysql
这个DBA有点耶5 小时前
SQL调优进阶:从“优化一条SQL”到“优化一个系统”的思维升级
java·大数据·数据库·sql·程序人生·dba·改行学it
IvorySQL6 小时前
PG 日报|SQL/PGQ 图查询基于联接重写机制实现
数据库·人工智能·sql·postgresql·区块链·ivorysql
数聚天成DeepSData9 小时前
遥感农业数据集下载全攻略
数据库·人工智能·深度学习·机器学习·自然语言处理·数据挖掘
一勺菠萝丶9 小时前
生产环境平滑升级实战-Nginx维护页数据库迁移与安全回滚
数据库·nginx·安全
心静自然凉8009 小时前
MySQL主从同步配置(一主一从)
数据库
haidy ahmed10 小时前
企微复杂审批流反序列化:动态表单解析引擎与EAV存储模型
数据库·人工智能·自动化·企业微信
Lihua奏10 小时前
MVCC:为什么多人同时读写数据,数据库还能不乱
数据库
9523610 小时前
Redis - 应用
数据库·redis·分布式·缓存
青山木10 小时前
一把 Redis 分布式锁,踩透四个坑:锁争抢、僵尸锁、锁过期、锁丢失
java·数据库·redis·后端