where子句

关系运算 >、<、=、!=、<>、>=、<=

--查询除办事员外的所有人员信息
select * FROM emp WHERE job != 'CLERK'
select * FROM emp WHERE job <> 'CLERK'
select * FROM emp WHERE job not in 'CLERK'

逻辑运算 not、and、or

--查询销售人员或办事人员
select * FROM emp WHERE job='SALESMAN' OR job='CLERK'
--查询销售人员或办事人员,并且工资大于800
select * FROM emp WHERE (job='SALESMAN' OR job='CLERK') AND sal>900

IS NULL(是否为空)

--查询奖金为空的所有雇员
select * FROM emp WHERE comm is NULL

BETWEEN(在某两个值之间)
NOT BETWEEN ... AND
--查询工资在1500~3000之间的全部雇员信息
select * FROM emp WHERE sal BETWEEN 1500 AND 3000
select * FROM emp WHERE sal>=1500 AND sal<=3000

IN(一系列值中)
NOT IN
--查询所有办事人员、销售人员、管理者
select * FROM emp WHERE job IN ('CLERK','SALESMAN','MANAGER')
select * FROM emp WHERE job='CLERK' OR job='SALESMAN' OR job='MANAGER'

LIKE(相似值的比较)
--查询姓名以M开头的所有雇员
-- % 匹配符,匹配0个、一个或多个任意字符
select * FROM emp WHERE ename like 'M%'
--查询姓名以S结尾的所有雇员
select * FROM emp WHERE ename like '%S'
--查询姓名包含A的所有雇员
select * FROM emp WHERE ename like '%A%'

EXITS(是否存在符合条件的数据)
select * FROM emp WHERE EXISTS (select * FROM emp WHERE sal>4000)

UNIQUE(是否唯一)
ALL/ANY(一组数据的所有/其中的任何一个)

字符串拼接
--字符串拼接 || s为自命名的列名
select ename,'基本工资:'||sal from emp
--字段别名
select ename,'基本工资:'||sal s from emp

列表达式
select sal,sal+comm FROM emp
--实现员工各项工资明细和各项工资总和
--列表达式,开始:case  结束:end 当...条件:when 就then 否则else
select '基本工资:'||sal sal,'奖金'||comm comm,
CASE
  WHEN comm IS NULL
    THEN sal
  WHEN comm = 0
    THEN sal
  ELSE sal + comm
end total
from emp

--显示员工各项工资之和大于2000的雇员信息
select * FROM emp WHERE
case
  WHEN comm IS NULL 
    THEN sal 
  WHEN comm = 0
    THEN sal
  ELSE sal + comm
end >2000







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值