SQL不是我的强项。我有一个SQL Server 2008数据库。这个数据库有一个存储过程,需要输入八个int参数。出于让问题更加明确的考虑,我将使用其中一个参数作为参考:
@isActive int
每个int参数都会是-1、0或1。-1表示“未知”或“不关心”。基本上,我需要查询一个表格,以便如果int参数不是-1,则需要在我的WHERE子句中考虑它。因为有八个int参数,if-else语句似乎不是一个好主意。同时,我不知道还有其他方法可以做到这一点?
在SQL中是否有一种优雅的方式,在参数不等于某个值时添加WHERE条件?
谢谢!
(@Search1=-1 OR Column1=@Search1) AND ...
- KM.