首页 > 其他 > 详细

8-05分支结构CASE..END

时间:2016-11-25 22:44:07      阅读:145      评论:0      收藏:0      [点我收藏+]

语法:

CASE 

WHEN  条件1 THEN 结果1

WHEN  条件2  THEN 结果2

...ELSE  其他结果

END

执行顺序:

条件1成立执行结果1

条件2成立执行结果2

如果所有WHEN的条件都不成立,则执行ELSE中的结果。

说明:ELSE可省略,如果省略ELSE并且WHEN的表达式的都不为TRUE,

那么ELSE返回NULL。

使用ABCDE打分制给学生打分:

--A级:90分以上
--B级:80分以上
--C级:70分以上
--D级:60分以上
--E级:60分以下
DECLARE  @scroe int
SET  @scroe  =93
--使用CASE...END 进行多重判断。选择一个去执行:
WHEN  @scroe>=90 THEN‘A‘
WHEN  @scroe>80  AND  @scroe<=89THEN‘B‘
WHEN  @scroe >70 AND  @scroe<80 THEN‘C‘
WHEN  @scroe> 60 AND  @scroe<70 THEN‘D‘
ELSE ‘E‘

下面看看CASE ...END如何在SQL语句中使用:

---等级划分:
--购买一次为普通会员,购买2-5次为白金会员,购买6-10为VIP会员,10次以上为为VIP白金会员:
SELECT  用户编号=UserId   次数=
CASE
WHEN   COUNT(*)=1  ‘普通会员‘
WHEN   COUNT(*)  BETWEEN  2 AND  5  ‘白金会员‘
WHEN   COUNT(*)  BETWEEN 6 AND  10 ‘VIP会员‘
ELSE‘白金VIP会员‘
FROM  OrderInfo 
GOUP BY UserID

  

8-05分支结构CASE..END

原文:http://www.cnblogs.com/gcmwalker/p/6102881.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!