CASE WHEN的简单用法



sql中判断非AB类似的表达式时,可以用“case-when”句式来判断。

When judgeexpression as not A is B,

语法:

 

CASE WHEN conditionTHEN result

[WHEN ...]

[ELSE result]

END

 

CASE 子句可以用于任何表达式可以有效存在的地方。condition是一个返回boolean的表达式。 如果结果为真,那么CASE 表达式的结果就是符合条件的result。 如果结果为假,那么以相同方式搜寻任何随后的WHEN子句。如果没有WHEN condition为真,那么case表达式的结果就是在ELSE 子句里的值。如果省略了ELSE子句而且没有匹配的条件, 结果为 NULL

 

--简单Case函数

CASE sex

         WHEN '1' THEN ''

         WHEN '2' THEN ''

ELSE '其他' END

--Case搜索函数

CASE WHEN sex = '1'THEN ''

         WHEN sex = '2' THEN ''

ELSE '其他' END

小例子:

select name, 

case whenzongxuefen>10 then '优秀' 

      when zongxuefen<10 and zongxuefen>5then '良好'

      else '不合格'

      end 

      as level

from XS

你可能感兴趣的:(SQLServer)