fro*_*die 11 sql boolean case bit
我想根据位字段是真还是假来有条件地选择一些东西.这是我最初尝试的语法:
CASE WHEN isSoon THEN 'Soon' ELSE 'Not so soon' END As HowSoon
这对我来说很有意义,因为"WHEN"后面必须是一个布尔表达式isSoon,因为它是一个小字段.但是,这不起作用.我最终要做的是:
CASE WHEN isSoon = 1 THEN 'Soon' ELSE 'Not so soon' END As HowSoon
这对我来说似乎是多余的......这就像if(isSoon == True)用编程语言编写而不是更直观,if(isSoon)而且反对谷物.为什么SQL设置如此?是因为位字段不是真正的布尔值吗?
il_*_*uru 13
由于位数据类型不是布尔类型,因此它是用于优化位存储的数据类型.
字符串"true"和"false"可以转换为位的事实可能会产生误导,但是,引用MSDN,有点是"可以取值为1,0或NULL的整数数据类型".
| 归档时间: | 
 | 
| 查看次数: | 6032 次 | 
| 最近记录: |