003_过滤和排序数据

使用WHERE 子句,将不满足条件的行过滤掉。

WHERE 子句紧随 FROM 子句。

 

where过滤

字符和日期

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

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

默认的日期格式 DD-MON-RR

 

 

16、限制日期、字符串查询

select last_name,department_id

from employees

where last_name = 'Whalen'--注意,字符串大小写敏感,放在单引号中

 

select last_name,department_id,hire_date

from employees

where hire_date = '7-6月-1994'--日期也应该放在单引号中,默认格式是 DD-MON-RR

 

 

 

比较运算

操作符

含义

=

等于 (不是 ==)

>

大于

>=

大于、等于

<

小于

<=

小于、等于

<>

不等于 (也可以是 !=)

 

注意:赋值使用   :=    符号

 

17、比较限制查询

select salary

from employees

where salary > 5000

 

 

 

其它比较运算

操作符

含义

BETWEEN...AND...

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

IN(set)

等于值列表中的一个 

LIKE

模糊查询

IS NULL

 空值

l between……and……

使用 BETWEEN 运算来显示在一个区间内的值。

l in

使用 IN运算显示列表中的值。

l like

使用 LIKE 运算选择类似的值

选择条件可以包含字符或数字:

n % 代表零个或多个字符(任意个字符)

n _ 代表一个字符。

n %_可以同时使用

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

 

l NULL

使用 IS (NOT) NULL 判断空值。

 

 

 

 

18between-and

select salary

from employees

where salary between 5000 and 10000--包含了边界的

 

 

 

 

19In

select last_name,salary

from employees

where salary in(5000,6000,7000)--相当于几个等于  比较的或

 

20、模糊查询like

 

使用 LIKE 运算选择类似的值

选择条件可以包含字符或数字:

% 代表零个或多个字符(任意个字符)

_ 代表一个字符。

 

ESCAPE

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

select last_name

from employees

where last_name like '_a\_%' escape '\'--%表示可省略但不一定有省略_表示略过一个字符,

--escape '\'表示\作为转义,这里就是作为转义表示_

 

21、空查询

select last_name,salary

from employees

where salary is not null--不为空值

 

 

 

 

 

 

逻辑运算

操作符

含义

AND

逻辑并

OR

逻辑或

NOT

逻辑否

 

 

l AND

AND 要求并的关系为真。

 

l OR

OR 要求或关系为真。

 

l NOT

取相反

 

 

 

 

优先级

越高越优先

 

优先级

运算符

1

算术运算符

2

连接符

3

比较符

4

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

5

[NOT] BETWEEN

6

NOT

7

AND

8

OR

 

 

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

 

Order by排序

ORDER BY子句

l ASCascend: 升序

l DESCdescend: 降序

l ORDER BY 子句在SELECT语句的结尾。

默认排序方式是:ASC(升序)

 

22、降序排序

select salary

from employees

order by salary desc--select末尾,order by 属性 排序方式

 

23、多级排序

第一个属性排序之后有相等的属性,再用另外一个属性对这些相同的进行排序。

select department_id,salary

from employees

order by salary desc,department_id asc--直接逗号隔开,再写。先按salary排序,再按department_id排序

 

24、别名排序

临时出现的列,给它别名,然后用这个别名排序。

select department_id,salary,salary*12 "年薪"

from employees

order by 年薪

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值