第2节-过滤和排序数据

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

过滤和排序数据

一.使用where子句(过滤,WHERE 子句紧随FROM 子句)

字符和日期要包含在单引号中。

字符大小写敏感,日期格式敏感。

默认的日期格式是DD-MON月-RR。

操作符含义

= 等于(不是==)

> 大于

>= 大于、等于

< 小于

<= 小于、等于

<> 不等于(也可以是!=)

■如何显示工资高于3000的员工

selectname,sal from emp where sal>3000;

■如何查找1982.1.1后入职的员工

a:select ename,hiredate from emp where hiredate>to day('yyyy-mm-dd',1982.1.1) b:select ename,hiredate from emp where hiredate>'1-1月-1982';

■如何显示工资在2000到2500的员工情况

selectename,sal from emp where sal>=2000 and sal<=2500;

操作符含义

BETWEEN...AND... 在两个值之间(包含边界)

IN(set) 等于值列表中的一个

LIKE 模糊查询

IS NULL 空值

使用betwwen...and...语句

如何显示工资在2000到2500的员工情况

selectename,sal from emp where sal between 2000 and 3000;

■如何使用in操作符

?如何显示empno为123,345,800...的雇员情况

select * from emp where empno in(123,234,456)

■如何使用like操作符

%: 表示任意0到多个字符_: 表示任意单个字符

回避特殊符号的:使用转义符。例如:将[%]转为[\%]、[_]转为[\_],然后再加上[ESCAPE ‘\’] 即可。

?如何显示首字符为S的员工姓名和工资

selectename,sal from emp where ename like 's%';

?如何显示第三个字符为大写O的所有员工的姓名和工资

selecteame,sal from emp where eame like'--o%';

■使用is null的操作符

?如何显示没有上级的雇员的情况

select * from emp where mgr is null

■使用逻辑操作符号

?查询工资高于500或是岗位为MANAGER的雇员,同时还要

满足他们的姓名首写字母为大写的J

select * from emp where (sal>500 or job='manager') and ename like 'J%';

二.使用order by字句(默认是升降)

?如何按照工资的从低到高的顺序显示雇员的信息

a:select * from emp order by salasc

b:select * from emp order by sal

?按照部门号升序而雇员的入职时间降序排列

select * from empsal order by saldesc

■使用列的别名排序

select ename,sal*12 "年薪" from emp order by "年薪" asc; 别名需要使用“号圈中

优先级(可以使用括号改变优先级顺序)

1 算术运算符

2 连接符

3 比较符

4 IS [NOT] NULL, LIKE, [NOT] IN

5 [NOT] BETWEEN

6 NOT

7 AND

8 OR

相关文档
最新文档