固然现今硬件当作本已经下降,经由过程进级硬件晋升系统机能也是常用的优化体例。而及时性要求很高的系统,仍是要从sql方面进行优化,本文以sqlserver为例演示,此中的优化道理也合用于其他数据库
优化的一个本家儿要方面就是尽量避免全表扫描,改为索引扫描
方式/步调
- 1
恰当的索引
1)索引就半斤八两于字典的目次,按照索引查找就可以直接定位具体页数,不消整本字典一页一页的查找,效率天然是不问可知。
2)对于汗青数据不太存眷的场景,好比订单,凡是来说,3年之前的订单数据,很少会需要查询到,比来的订单才是最常用的,那么可以考虑把订单日期作为索引的一个列建立
3)经常需要where查询的字段也作为索引的一个列建立
- 2
尽量不要有空判定的语句,因为空判定将导致全表扫描,而不是索引扫描。
对于空判定这种环境,可以考虑对这个列建立数据库默认值
- 3
尽量不要利用不等于前提,因为,这会导致全表扫描
对于不等于这种环境,考虑改为规模查询解决
- 4
尽量不要利用or前提,因为,这会导致全表扫描
对于or这种环境,可以改为 别离查询,然后 union all
- 5
尽量不要利用摆布恍惚查询,因为,这会导致全表扫描
对于摆布恍惚查询的环境,试着改为右侧恍惚查询,如许是可以索引查找的
- 6
尽量不要在执行算数运算后的比力,因为,函数、算术运算或其他表达式运算凡是将导致全表扫描
对于这种环境,可以考虑冗余部门数据到表中
- 7
尽量利用exists取代in
- 8
尽量避免一次性返回年夜数据量,可以考虑分页返回
注重事项
- 部门图片来历于收集
来源:百闻(微信/QQ号:9397569),转载请保留出处和链接!
本文链接:https://www.ibaiwen.com/web/216833.html
- 上一篇: Powershell如何计算命令的执行时间
- 下一篇: 必玩-凡人修仙1.0正式版攻略 单刷开局怎么玩
- 热门文章
-
WB蒙特利尔(WB Montreal)——欧美十大最差视频游戏开发商
迅猛龙(Velociraptor)——欧美史前十大死亡动物
什么是果酱猫(What Marmalade Cats)?
神奇蜘蛛侠2(The Amazing Spider-Man 2)——欧美最佳蜘蛛侠电影
希瑟(Heather)——欧美十大最佳柯南灰歌
二人梭哈
奥兹奥斯本(Ozzy Osbourne)——欧美十大高估歌手
faceu激萌怎么把瘦脸开到最大
什么是小脑前下动脉(Anterior Inferior Cerebellar Artery)?
我应该知道康涅狄格州的什么(What Should I Know About Connecticut)?
- 热评文章
- 最新评论
-
- 最近访客
-
- 站点信息
-
- 文章总数:200248
- 页面总数:9
- 分类总数:1
- 标签总数:0
- 评论总数:0
- 浏览总数:497