War*_*ren 6 sql t-sql sql-server case-when in-operator
大家好(我在堆栈上的第一篇文章!),
这有效:
where
Tran_date between @FromDate and @ToDate
and Range = @Range
and Store_ID =
case when @Range = 'RangeName' then
1234
else
Store_ID
end
Run Code Online (Sandbox Code Playgroud)
但我怎么能做到这一点?:
where
Tran_date between @FromDate and @ToDate
and Range = @Range
and Store_ID
case when @Range = 'RangeName' then
not in (1234, 5678)
else
Store_ID
end
Run Code Online (Sandbox Code Playgroud)
where
Tran_date between @FromDate and @ToDate
and Range = @Range
and Store_ID
case when @Range = 'RangeName' AND Store_Id in (1234, 5678)
9999 -- Assumes 9999 is a non possible value.
-- If it is possible then pick one that isn't.
else
Store_ID
end
Run Code Online (Sandbox Code Playgroud)
我想你想要:
AND NOT (@Range = 'RangeName' AND Store_ID IN (1234,5678))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
28346 次 |
最近记录: |