添加过滤器以提高SQL性能
只是一个基本问题 添加更多过滤器是否会提高表扫描的性能 例如,如果我有一个表,其中的列有很多空值,但我只查找大于35的值 如果某个东西不是空的,而某个东西>35,那么执行添加过滤器以提高SQL性能,sql,sql-server,performance,sql-server-2005,Sql,Sql Server,Performance,Sql Server 2005,只是一个基本问题 添加更多过滤器是否会提高表扫描的性能 例如,如果我有一个表,其中的列有很多空值,但我只查找大于35的值 如果某个东西不是空的,而某个东西>35,那么执行会更快吗?还是我应该坚持执行而某个东西>35 运行MS SQL Server 2005。这两种公式在功能上是等效的 在执行完整表扫描时,开销在于将页面加载到页面缓存中。进行测试是计算工作的最小部分。如果两次选中NULL,则性能差异可能无法测量 选择: where something > 35 及 问题是查询的表达能力如
会更快吗?还是我应该坚持执行而某个东西>35
运行MS SQL Server 2005。这两种公式在功能上是等效的
在执行完整表扫描时,开销在于将页面加载到页面缓存中。进行测试是计算工作的最小部分。如果两次选中NULL,则性能差异可能无法测量
选择:
where something > 35
及
问题是查询的表达能力如何。我更喜欢显式地在where
子句中进行空检查。然而,两者是等效的。这两种配方在功能上是等效的
在执行完整表扫描时,开销在于将页面加载到页面缓存中。进行测试是计算工作的最小部分。如果两次选中NULL,则性能差异可能无法测量
选择:
where something > 35
及
问题是查询的表达能力如何。我更喜欢显式地在where
子句中进行空检查。但是,两者都是等效的。表中有索引吗?有索引吗?表中有四个索引几乎某个>35的已经不是空的。坚持使用something>35
。您可以分析这两个版本以查看差异。表中是否有索引?是否有索引?表中有四个索引几乎所有某个即>35的内容已不为空。坚持使用something>35
。您可以分析两个版本以查看差异。