我创建的SQL Server 2008的存储过程中的主要查询的WHERE
条款可能是要么T-SQL:决定2之间WHERE子句
WHERE (MyTable.Code = 'A')
或
WHERE (MyTable.Code <> 'A')
问题:处理这个最简单的方法是什么?有一个输入参数,告诉哪个条件使用,然后使用一个if语句使用第一个SQL语句,否则第二个?似乎不是最有效的方式。
此外,有没有办法将整个WHERE
子句作为输入参数传递?
实例参数
@WHERE: "WHERE (MyTable.Code='A')
,这样就可以做...
SELECT * FROM TABLE @WHERE
动态SQL,等于或也不是参数相同。 – Mihai
这听起来像你可能会走下去的路线,文章[T-SQL中的动态搜索条件](http://www.sommarskog.se/dyn-search.html)将是最好的阅读。 –