如何将计算的布尔(bit
)列添加到依赖于其他两个布尔列的SQL Server表中? (我更喜欢SSMS解决方案)。
我可以使用以下代码获取具有正确值的计算列:
case when ([ColumnA]=(1)) AND ([ColumnB]=(0)) then (1) else (0) end
但是结果列的类型为int
,当我在C#中使用数据时,它就会失效。
环顾四周,似乎我需要使用CAST
语句,但我还没有设法解决语法问题。我知道这不起作用:
cast (case when ([ColumnA]=(1)) AND ([ColumnB]=(0)) then (1) else (0) end) as bit
我该怎么办?
答案 0 :(得分:2)
您misplaced
parenthesis
。试试这个。
Cast (CASE
WHEN [ColumnA] = 1
AND [ColumnB] = 0 THEN 1
ELSE 0
END AS BIT)