当前位置:首页 > 数据库 > SQL > 正文内容

SQL case函数

小道5年前 (2018-08-26)SQL4100

当我们需要从数据源上 直接判断数据显示代表的含义的时候 ,就可以在SQL语句中使用 Case When这个函数了.

有一个 客户表:

image.png


根据表内等级 查找 客户等级:

select 名字,年龄,
( --括号内
case 等级 --查找等级列
when 1 then '普通客户'  --符合1
when 2 then '普通会员'  --符合2
when 3 then '白金会员'  --符合3
when 4 then '黄金会员'  --符合4
else '未知客户'  --没有匹配的
end --完毕
) as 客户类型  --为列命名
from 客户  --客户表

输出结果:

image.png


根据年龄限制消费额度:

select 名字,年龄,
( --case 写在括号内
case   --不写列
when 年龄<18 then '未成年,禁止入内'   --检查年龄列 数据是否小于18
when 年龄>=18 and 年龄 <=27 then '可以消费1000元以下.'  --检查年龄列 数据是否大于或等于18 或 小于等于27
when 年龄>27 and 年龄 <=29 then '可以消费10000元以下.'
else '无限制'  --其他年龄无限制
end  --完毕
) as 消费限额  --为列命名
from 客户  --客户表

输出结果:

image.png

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://daobk.com/post/72.html

分享给朋友:
返回列表

上一篇:SQL Date 函数

下一篇:SQL练习

“SQL case函数” 的相关文章

SQL语句:过滤重复数据(distinct)

SQL语句:过滤重复数据(distinct)

SQL语句:过滤重复数据先通过ALTER TABLE语句添加 新的列:alter table person add 国籍 nvarchar(max) alter table person add 学校&nbs...

SQL练习

SQL练习

有一个 统计结果表,按要求输出:select 名字,SUM ( case 比赛结果 when '胜' then 1   --如果时候胜 就输出1 else 0 &nb...

SQL数据表处理练习

SQL数据表处理练习

SQL数据表处理练习有一个 工作表 如下:以下输出结果全部依分钟计算。(一)输出所有数据中通话时间最长的5条记录:select top 5 * from 工作 order by DATEDIFF(MI,开始时间,结束时间...

全国省市县数据库 SQLServer版

全国省市县数据库 SQLServer版

全国省市县数据库 SQLServer版,数据比较老,测试学习数据库用:/**********创建省级表**********/  CREATE TABLE T_Province  (  ProID INT IDENTITY(1...