【发布时间】:2019-08-06 20:01:46
【问题描述】:
案例:我有一个存储过程,我在其中获取了一个表的所有信息。 我有 2 个参数来设置 Where 子句,但其中之一可能是 0.
问题:如何根据我的参数值在我的Where 子句中使用Case When 或If?
仅当值不同于 0 时,我才想应用 where 子句
如果为 0,我不想这样做。
代码:
@ID_ORDER,
@ID_SUPPLIER
Select *
From Orders ord
where @ID_SUPPLIER = ord.ID_SUPPLIER
AND CASE WHEN @ID_ORDER = 0 THEN ord.ID_ORDER = @ID_ORDER END
【问题讨论】:
标签: sql sql-server where-clause