SQL使用CASE 语句

CASE 语句可以在SELECT 子句和ORDER BY 子句中使用

CASE语句分为两种Case Simple Expression and Case Search Expression

Case Simple Expression:

CASE Column1
WHEN V1 THEN R1
WHEN V2 THEN R2
ELSE R3
END

Case Search Expression

CASE 
WHEN C1=V1 THEN R1
WHEN C2=V2 THEN R2
ELSE R3
END

当在Orderby 中使用Case语句时,如果排序是按照ASC的话,会将不满足条件的结果集无序地放在总结果集的前面,然后将满足条件的结果集排序后附件到总结果集中,如果使用DESC的话,则将满足条件的结果集放在总结果集的前面,然后将为满足条件的结果集无序地附加到总结果集后面:


 

 
分类: SQL Server
 
好文要顶 关注我 收藏该文  
1
0
 
(请您对文章做出评价)
 
« 上一篇:系统数据库--如何恢复Master数据库
» 下一篇:SQL NOTE-VARIABLE
posted @ 2012-10-12 20:13 笑东风 阅读(1277) 评论(1) 编辑 收藏

 

 
#1楼 2015-03-04 17:17 | jimcsharp  
"CASE 语句可以在SELECT 子句和ORDER BY 子句中使用"
也可以在 where 条件中使用, 如:
DECLARE @FlagINT=1;
select * from T5
WHERE ID1=(CASE WHEN @Flag=1 THEN '1' ELSE '2' END) ;
原文地址:https://www.cnblogs.com/lenther2002/p/4996416.html