首页 > 代码库 > oracle_11g -1
oracle_11g -1
select * from dual//select 2*3 from dual;_ select 2*3 from emp;
select ename ,sal*12 from emp; select ename,sal*12 anuual_sal from emp;
select ename ,sal*12 "anuual sal" from emp;//引号 保存里面的状态 不会转化成大写
1.任何含有空值的 数学表达式 结果都是空值
2.字符串的链接 || 相当于Java中的+
3.字符串中含有 ‘ , 用两个’‘表示出来 那一个
4.select deptno,job from emp; select distinct deptno,job from emp; distinct 去掉重复
5.select ename,sal,comm from emp where comm is null;
select ename, sal ,comm from emp where comm=null ; 错误嘚 ,选定某项为空 用is;
6.select ename ,sal,comm from emp where ename in (‘tom‘,‘jake‘); 用in对字符串的处理
select ename ,sal ,comm from emp where sal in(800,1500,2000); 用in对数字的处理,其实就是找相等的
7. select ename ,hiredate from emp;查出 Oracle中 date的表示方式 查询日期时 必须按照 格式书写。
select sysdate from emp; 也可以查询出 日期的格式
select ename, sal ,hiredate from emp where hiredate>‘31-3月-80‘;查询雇佣时期 在 80年 3月31 以后的人的 名字 月薪 雇佣日期
8. select deptno , ename, sal from emp where deptno =10 or sal >1000;
9. select ename from emp where ename like ‘%ALL%‘; 模糊查询 % 代表多个字符 _代表一个字符
10. select enamel from emp where ename like ‘%$%%‘ escape ‘$‘ ; 查询 名字中含有 %的人名字; 自定义转义字符 用 escape ;
11. select ename, deptno from emp where sal >1000 order by deptno asc , ename desc;
order by 排序 :desc 降序 、asc 升序 默认为asc ,子排序用 逗号 隔开。
12. select enmae, deptno, sal*12 annual_sal from emp where ename not like‘_A%‘ order by deptno desc ,ename;
function
1. lower() uper()
2.substr() select substr(ename,2,3) from emp; 截取ename 从第二个字符开始 一共要截取三个字符
3. chr() 和ascii() select chr(97)from dual;//将ASCII码 97 转换成字符
select ascii(‘a‘) form dual; 将a字符 转换成ascii码
4.round() select round(23.56) from dual; select round(23.56,-1) from dual;
5.to_char()对 数字 和 日期的格式转换
select to_char(sal,‘$99,999.9999‘) from emp;//
select to_char(sal,‘L00,000.0000‘)from emp; L前面 的意思是 本地货币 0代表一位数字 该为数字没有用0补
select to_char(hiredate,‘YYYY-MM-DD HH:MI:SS‘) 显示为 1993-02-26 2:00:00
select to_char(hiredate,‘MM_DD_YYYY HH24:MI:SS‘) 显示为02_26_1993 14:00:00
6.select hiredate from emp
where hiredate>to_date(‘1993-02-26 14:56:56‘,‘YYYY-MM-DD HH24:MI:SS‘);查询雇佣日期在什么之后时可以自己指定格式了
7. select sal from emp
where sal>to_number(‘$1,500.00‘,‘$99,999.99‘);格式转换时 后面的描述格式 只能比前面的实例描述的多!
8. nvl(,) : select ename,sal*12+nvl(comm,0)from emp; nvl(comm,0) comm中的值为空值的时候 用0代替 ,若不是空值 则还是comm本身
组函数: 有多条输入 有1条输出语句
1. avg() 、 sum()、 count() 、min()、 max() 一共5个
select count(ename)from emp where deptno=10; 找出部门号为10的 部门 共有多少人
select count(comm) from emp ; select count(*)from emp;区别count(comm)不会将空值 算一个 而count(*)空值也算一个单位
oracle_11g -1