SQL CASE语句
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL CASE语句相关的知识,希望对你有一定的参考价值。
从数据表中选择一个字段“field”,如果“field”值是1或NULL就赋值为1,其它情况为0,该怎么写啊?这样写对不对啊?
(CASE field
WHEN '1' THEN '1'
WHEN NULL THEN '1'
ELSE '0' END
) AS field
你可以当字段等于NULL时给一个默认值。比如
(CASE isnull(field,'')
WHEN '1' THEN '1'
WHEN '' THEN '1'
ELSE '0' END
) AS field
或者在when后边写条件
case when field = '1' then '1' when field is null then '1' else '0' end as field 参考技术A select case field when 1 then 5 when 2 then 88 else 99 end aa from tablename
你那样写没有问题的 参考技术B 这个写错了吧追问
那该怎么写?
参考技术C 你这样写已经可以了,还有什么问题!SQL语句中case,when,then的用法
参考技术A Select Case 语句在有多个可能的条件必须被检查时使用。与 If 语句不同,Select Case语句在找到匹配的Case 表达式并执行了Case 表达式和下一个Case 表达式之间的语句后将立即跳出。如果没有匹配的Case 表达式,将执行其它语句。Case Else 与lse 的意义相同。Case 语句能接受各种类型的(作为判断条件的)表达式。表达式可以是单一值、由逗号分隔的一组值、能返回值的函数、用"To"关键字指定的值的范围或者使用"Is"关键字对等式或不等式进行测试。您可以连接不同类型的不同表达式,只要将它们用逗号分开即可。
以上是关于SQL CASE语句的主要内容,如果未能解决你的问题,请参考以下文章