添加计算的布尔列SQL Server

时间:2014-11-28 05:45:34

标签: c# sql-server-2008

如何将计算的布尔(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

我该怎么办?

1 个答案:

答案 0 :(得分:2)

misplaced parenthesis。试试这个。

      Cast (CASE
               WHEN  [ColumnA] =  1  
                    AND  [ColumnB] =  0   THEN  1 
               ELSE  0 
             END AS BIT)