Tsql翻译

时间:2010-12-16 21:45:30

标签: tsql

我有一张像

这样的表格
Id | IsActive
1  | True
2  | False

我想搜索有效,无效或两者兼有的项目

我想查询

声明@ActiveState位

从myTable中选择*,其中IsActive ...

在我的where子句中我希望有类似

的内容
if(@ActiveState != null)
    myTable.IsActive == @ActiveState
else
    myTable.ActiveState == true || myTable.ActiveState == false

但我无法找到在同一个where子句

上执行此操作的方法

TKS

3 个答案:

答案 0 :(得分:1)

select * from myTable where @ActiveState is null or IsActive = @ActiveState

答案 1 :(得分:1)

WHERE myTable.IsActive  = @ActiveState OR @ActiveState IS NULL

答案 2 :(得分:1)

Where IsActive = IsNull(@ActiveState, IsActive)

Where IsActive = Coalesce(@ActiveState, IsActive)