【发布时间】:2017-02-22 11:32:03
【问题描述】:
我在一个存储过程中有以下示例查询,其中@StartDate、@EndDate 和@ClientID 参数都是可选的。
在查询中处理该问题的最佳方法是什么,以确保我获得取决于 1 个或多个参数是否具有值的结果?
select * from table
WHERE
StartDate >= @StartDate and
StartDate <= @EndDate and
CE.ClientID = @ClientID
例如,某人可以只输入开始日期或只输入结束日期或选择特定的 ClientID 或将所有 3 个组合起来。
【问题讨论】:
-
最好的参考,IMO,是 Erland Sommarskog 的 Dynamic Search Conditions in T-SQL
标签: sql-server