TSQL动态在哪里

TSQL动态在哪里,tsql,dynamic,where,clause,Tsql,Dynamic,Where,Clause,我想做类似的事情 declare @var1 as integer Select * from table name where id If @var1 = 1 then 21 elseif @var1 = 2 <>21 将@var1声明为整数 从表名中选择* 何处id 如果@var1=1,则 21 埃尔塞夫@var1=2 21 我只想知道这是否可能。唯一需要更改的是比较运算符。其中(@var1=1和id=21)或(@var1=2和id=21) where ( @va

我想做类似的事情

declare @var1 as integer

Select * from table name 
where id
If @var1 = 1 then
 21 
elseif  @var1 = 2
 <>21
将@var1声明为整数
从表名中选择*
何处id
如果@var1=1,则
21
埃尔塞夫@var1=2
21
我只想知道这是否可能。唯一需要更改的是比较运算符。

其中(@var1=1和id=21)或(@var1=2和id=21)
where ( @var1 = 1 and id = 21) or (@var1 = 2 and id <> 21)
其中(@var1=1和id=21)或(@var1=2和id=21)