我在 sql 2008 中有一个查询,其中用户可以选择多个可选参数,如下所示:
I have a query in sql 2008 where a use can select multiple optional parameters like these:
@DateFrom
@DateTo
@UserType
@Customer
@User
基于所有这些选项进行过滤的最佳/最高效方法是什么?
What's the best / most performant approach to filtering based on all of these options?
使用这种方法可以避免使用多个 IF ELSE 条件和动态查询.
You can avoid using multiple IF ELSE condition and dynamic query by using this approach.
SELECT * FROM TBL
WHERE (@Name IS NULL OR Name = @Name)
AND (@Age IS NULL OR Age = @Age)
这篇关于具有多个可选搜索参数的 sql 搜索查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
截断时的 SQL 触发器SQL trigger on Truncate(截断时的 SQL 触发器)
SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUPSQL Efficiency: WHERE IN Subquery vs. JOIN then GROUP(SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP)
使用 t-SQL 检索 XML 元素名称Retrieving XML element name using t-SQL(使用 t-SQL 检索 XML 元素名称)
在 SQL 输出中插入双引号Insert double quotes into SQL output(在 SQL 输出中插入双引号)
从 SQL SERVER 中的 CTE 中删除行Delete rows from CTE in SQL SERVER(从 SQL SERVER 中的 CTE 中删除行)
TSQL 返回 NO 或 YES 而不是 TRUE 或 FALSETSQL to return NO or YES instead TRUE or FALSE(TSQL 返回 NO 或 YES 而不是 TRUE 或 FALSE)