SQL SERVER 2012新增函数之逻辑函数CHOOSE详解
SQLSERVER2012中新增了CHOOSE,该函数可以从值列表返回指定索引处的项。
例如:
selectCHOOSE(3,'A','B','C','D')asR1 /* R1 ---- C */
CHOOSE并不能这么用,例如有个字符串'A,B,C,D',我们并不能用choose得到其中的某个值:
selectchoose(2,'A,B,C,D') /* null */
CHOOSE的主要功能和CASEWHEN类似,例如数据库中有字段Sex:1表示男,2表示女。
ifobject_id('[tb]')isnotnulldroptable[tb] createtable[tb]([Id]int,[Name]varchar(4),[Sex]int) insert[tb] select1,'张三',1unionall select2,'李四',2unionall select3,'王五',1 select*from[tb] /* IdNameSex -------------------------- 1张三1 2李四2 3王五1 */
以前用CASEWHEN
select Id,Name,caseSexwhen1then'男'when2then'女'else''endassex from[tb]
有了CHOOSE以后,可以这样:
selectId,Name,CHOOSE(Sex,'男','女')assexfrom[tb] /* IdNamesex ------------------- 1张三男 2李四女 3王五男 */
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对毛票票的支持。