|
1
5
量,别猜! 这是您应该自己做的事情,使用类似于生产的数据。 不知道你的数据的组成,这就有很大的不同。
然后我会有一个insert/update触发器来正确填充该列,索引它并使用尖叫女妖速度:
这个 大多数数据库的读取频率高于写入频率,最好是尽可能少地执行此计算(即,当数据更改时,而不是每次选择时)。如果希望数据库具有可伸缩性,请不要使用每行函数。
如果再添加一个列和触发器是不可能的,我会选择
另一个选择,马克布给了,但因为删除了他的答案,所以我不得不去寻找
另一个
很好的答案是使用
|
|
|
2
1
在一个在Col1和Col2上有13.000.000个条目和索引的MSSQL表(MSSQL 2000)上,我得到以下结果:
第一个语句需要较少的编译时间,但需要更多的cpu时间来执行(culstered索引扫描)。 重要的是要知道,许多存储引擎都有一个优化器,它可以重新组织存储以获得更好的结果和执行时间。最终,这两条语句将由优化器重建为基本相同的语句。 |
|
|
3
0
我认为,你的替代表达并不意味着相同。假设filterValue为
服务器有可能从上的索引中回答此问题
OTOH,您应该在做出这样的假设之前进行度量,除非您对实现有深入的了解,否则在SQL中推测通常不起作用。例如,我很确定查询规划人员已经知道了这一点
|
|
|
4
0
得到以下结果: 两种方法的效果几乎相同 估计子树成本 公制。 或者 该方法具有更准确的预测价值 估计行数 公制。 比为 接近。 |
|
|
Johnny T · 基于当前值的SQL合并表[重复] 1 年前 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
ojek · 如何对SQL结果进行分组和编号? 1 年前 |
|
|
senek · 如何在PL/SQL中将选择结果(列)放入数组中 1 年前 |
|
|
Sax · 规范化Google表格(第一步) 1 年前 |
|
|
Jatin · 检索卷计数的动态sql抛出错误语法错误[关闭] 1 年前 |
|
|
Andrus · 如何在sql中查找第二个匹配项 1 年前 |