我正在做一些搜索,用户在下拉列表中选择一些子句。当他们将某些框留空时,我希望查询忽略子句。我知道 CASE,我想到的最好的方法是,如果我将 0 传递给存储过程中的参数,它会忽略该参数,就像这样。
WHERE a.Country = (CASE WHEN @Country > 0 THEN @Country ELSE (something else) END)
所以,(其他东西)应该像没有条件一样,它可以是“> 0”,因为国家/地区 ID 都来自 > 1,但我不知道如何在相同的情况下使用 > 和 =。
有什么建议么?