SQL*_*Mac 5 performance sql-server query-performance
我们有一个供应商要求我们截断一个数据表,并每天用相同的数据重新加载它。该表有 90k 行,大约 10mb。他们希望这样做的原因是 ETL 程序发现该表已更新。此表用于许多查询。
我的问题是对这个表所做的更改是否会在使用该表的查询计划中引起重新编译的连锁反应。或者 SQL 是否足够聪明,可以看到表内容没有改变,并避免重新编译?
是的,我们知道这是多么愚蠢。
是的,截断一个包含 90k 行的表将导致对触及它的任何查询进行重新编译。
您可以通过关闭auto update stats来阻止这种情况,并且在任何 update-stats 作业或重建索引作业中,您都可以排除此表。但是,我建议您保留它 - 毕竟,该表确实会随着时间的推移而更改,并且您希望您的查询计划更新。
| 归档时间: |
|
| 查看次数: |
147 次 |
| 最近记录: |