我有一个table1,列为C1,C2,C3和C4
所有这些列都存储位值(true或false)。
如何编写一个使用这些列上的逻辑运算的select查询并获得最终结果?
例:
Select ((C1 OR C2) AND (C3 OR C4)) AS FinalResult
from table1
答案 0 :(得分:2)
bit
列支持
Select ((C1 | C2) & (C3 | C4)) AS FinalResult
from table1
当两个操作数均为bit
时,结果与应用逻辑运算符的结果相同。
答案 1 :(得分:1)
只是测试它是否等于1(真):
Select CASE WHEN (C1 = 1 OR C2 = 1) AND (C3 = 1 OR C4 = 1) THEN 1 ELSE 0 END AS FinalResult
from table1