SQL优化相关(MS SQL)
1.With T AS () 中语句会单独生成执行计划
2.MS SQL数据库中已“页”的方式按顺序存储数据,如插入数据,会增加新的页,并将两页中数据平均分配,每一张未填满数据的页称为数据库碎片。
3.避免使用GUID等无序列作为索引
4.页压缩
5.表分区,利用CPU多核特性并行操作数据库
6.数据表数据量较大或join次数较多时时,join方式的自动选择会出现问题,需要在sql中手动设定hash join、merge join或loop join
下面我们通过一个表格简单总结这几种连接方式的消耗和使用场景:[引]
嵌套循环连接 |
合并连接 |
哈希连接 | |
适用场景 |
外层循环小,内存循环条件列有序 |
输入两端都有序 |
数据量大,且没有索引 |
CPU |
低 |
低(如果没有显式排序) |
高 |
内存 |
低 |
低(如果没有显式排序) |
高 |
IO |
可能高可能低 |
低 |
可能高可能低 |
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。