SQL Server的计算列公式语法
-
19-09-2019 - |
题
我想使用计算出的比特列,如果在表中的另一列不为空,这将是正确的。什么是这个正确的公式?
HasLabel = computed column (bit)
Label = varchar NULL
下面的公式不验证。 - ?我缺少什么结果
公式HasLabel = Label IS NOT NULL
解决方案
一个计算列必须返回一个值,而你只是在做一个比较。尝试这个代替:
case when label is null then 0 else 1 end
SQL Server将不然而明白这作为一个非空的列。来处理,计算更改为:
isnull(case when label IS NULL then 0 else 1 end, 0)
不隶属于 StackOverflow