有一条语句:
declare @IsShow Int
Select ......
From Z Left Join B On Z.id=B.id
Where Case @IsShow When 1 Then Z.id='0101' When 2 Then Z.id like '01%' end
我想根据@IsShow变量中值不同,过虑不同的数据!!
可惜的是,这条件语句是错的。
各位高手明白我的意思没? 有何解决方法?
...全文
9144打赏收藏
如何在Where条件中使用Case语句!!!
有一条语句: declare @IsShow Int Select ...... From Z Left Join B On Z.id=B.id Where Case @IsShow When 1 Then Z.id='0101' When 2 Then Z.id like '01%' end 我想根据@IsShow变量中值不同,过虑不同的数据!! 可惜的是,这条件语句是错的。 各位高手明白我的意思没? 有何解决方法?
declare @IsShow Int
Select ......
From Z Left Join B On Z.id=B.id
Where (case when @IsShow=1 and Z.id='0101' then 1
when @IsShow=2 and Z.id like '01%' then 1
else 0
end) = 1