1. 用case表达式做等值判断
格式:
case 表达式when 值1 then 返回值1when 值2 then 返回值2……[else 默认返回值]end
示例:
查询员工编号,姓名,部门编号,部门名称;
部门名称:
=30 SALE
=20 ETC
=10 JXB
其他 ICSS
SELECT empno,ename,deptno,CASE deptnoWHEN 30 THEN 'SALE'WHEN 20 THEN 'ETC'WHEN 10 THEN 'JXB'ELSE 'ICSS'END AS 部门名称FROM emp;
2. 用case表达式做非等值判断
格式:
casewhen 条件表达式1 then 返回值1when 条件表达式2 then 返回值2……[else 默认返回值]end
示例:查询员工编号,姓名,工资,工资级别,部门编号
工资级别:
>=5000 A
>=3000 B
>=2000 C
其他 D
SELECT empno,ename,sal,CASEWHEN sal>=5000 THEN 'A'WHEN sal>=3000 THEN 'B'WHEN sal>=2000 THEN 'C'ELSE 'D'END AS 工资级别,deptnoFROM emp;
1. decode函数与case第一种等值可以替代
格式:
decode(表达式,值1,返回值1,值2,返回值2....[,默认值返回值])
示例:
SELECT empno,ename,deptno,decode(deptno,30,'SALE',20,'ETC',10,'JXB','icss')AS 部门名称FROM emp;
本文介绍了SQL中Case表达式的两种使用方式,包括等值判断和非等值判断,并通过实例展示了如何使用这两种形式进行数据筛选和分类。此外,还介绍了decode函数及其与Case表达式等值判断部分的互换使用。
1395

被折叠的 条评论
为什么被折叠?



