【发布时间】:2023-03-27 16:43:01
【问题描述】:
我有一个查询,我想使用以下逻辑(完全清楚它不会像写的那样工作):
select *
From orders
Where if Value1 != 'TEST'
(Value1 = @1)
Else if Value2 != 'TEST'
(Value2 = @2)
Else 1=2
我认为我不能使用Case...When 或iif,因为该值可以根据条件结果过滤更改查询。有什么想法吗?
【问题讨论】:
-
什么风格的 SQL ?
-
为什么不使用标准的 AND/OR?
-
你可以使用存储过程吗,可以通过动态存储过程来完成
-
抱歉描述性不够!使用microsoft SQL server 2012,所以T-SQL
-
不能使用和/或。如果第一个是真的,我不想匹配第二个。如果第一个没有好的数据,只想使用第二个
标签: sql-server tsql where