sql query - true => true,false => true或false

Tab*_*ico 4 sql t-sql sql-server boolean-logic bit

简单查询,可能不可能,但我知道那里有一些聪明的人:)

给定一个布尔参数,我希望定义我的where子句来限制某个列的输出 - 或者什么也不做.

因此,给定参数@bit = 1,这将是结果:

其中column = 1

给定参数@bit = 0这将是结果:

其中column = 1或0

即没有效果/显示所有结果(列是一个位字段)

我不想要动态的SQL - 我可以解决在代码中解决这个问题,但我只是想知道是否有一些聪明的魔法可以使上面的整洁和简单.

在那儿?我正在使用sql server.

欢呼声:D

Ada*_*ter 7

column = 1 or @bit = 0如果列可能只是0或1,则答案有效.如果列可能是您想要的任何值: column = 1 or @bit = 0 and column = 0.