Oracle数据库的查询之过滤和排序(二)
一.过滤 例如:查询10号部门的员工
select * from emp where deptno=10;
二.字符和日期 查询名叫KING的员工
select * from emp where ename ='KING';
查询入职日期是17-11月-81的员工
select * from emp where hiredate='17-11月-81';
修改日期格式
select * from v$nls_parameters; --查询出之前的日期格式
alter session set NLS_DATE_FORMAT='yyyy-mm-dd'; --修改之后的日期格式
三.比较运算 查询薪水1000~2000之间的员工
select * from emp where sal between 1000 and 2000;
查询部门号是10和20的员工
select * from emp where deptno in (10,20);
查询名字以S打头的员工
select * from emp where ename like 'S%';
查询名字是4个字的员工
select * from emp where ename like '____'
查询名字中含有下划线等特殊字符的员工,这个时候就需要使用转义字符
select * from emp where ename like '%_%' escape ''; “”可以用其他字符代替,例如a
四.逻辑运算 五.排序 例如:查询员工的年薪(方式1)
select empno,ename,sal,sal*12 from emp order by **sal*12** desc;
方式2:
select empno,sal*12 年薪 from emp order by **年薪** desc;
方式3(4代表的是sal*12处于第几列):
select empno,sal*12 from emp order by **4** desc;
多个列进行排序(需要在每一个列的后面呢加上排序方式)
select * from emp order by deptno desc,sal desc
--查询员工信息,按照奖金排序
null的排序
select * from emp order by comm;
set pagesize 20; 设置一页显示的数据量多少
修改之后把空值放到最后就可以了
select * from emp order by comm desc nulls last; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |