位置: 编程技术 - 正文

SQL SERVER 的SQL语句优化方式小结(sql server?)

编辑:rootadmin
1、SQL SERVER 的性能工具中有SQL Server Profiler和数据库引擎优化顾问,极好的东东,必须熟练使用。 2、查询SQL语句时打开“显示估计的执行计划”,分析每个步骤的情况 3、初级做法,在CPU占用率高的时候,打开SQL Server Profiler运行,将跑下来的数据存到文件中,然后打开数据库引擎优化顾问调用那个文件进行分析,由SQL SERVER提供索引优化建议。采纳它的INDEX索引优化部分。 4、但上面的做法经常不会跑出你所需要的,在最近的优化过程中CPU占用率极高,但根本提不出我需要的优化建议,特别是有些语句是在存储过程中并且多表联立。这时就需要用中级做法来定位占用CPU高的语句。 5、还是运行SQL Server Profiler,将运行结果保存到某个库的新表中(随便起个名字系统会自己建)。让它运行一段时间,然后可以用 select top * from test where textdata is not null order by duration desc 这个可以选出运行时间长的语句,在ORDER BY 中可以替换成CPU、READS,来选出CPU占用时间长和读数据过多的语句。 定位出问题的语句之后就可以具体分析了。有些语句在执行计划中很明显可以看出问题所在。 常见的有没有建索引或索引建立不合理,会出现table scan或index scan,凡是看到SCAN,就意味着会做全表或全索引扫描,这是带来的必然是读次数过多。我们期望看到的是seek或键查找。 6、怎么看SQL语句执行的计划很有讲究,初学者会过于关注里面显示的开销比例,而实际上这个有时会误导。我在实际优化过程中就被发现,一个index scan的执行项开销只占%,另一个键查找的开销占%,而键查找部分根本没有可优化的,SEEK谓词就是ID=XXX这个建立在主键上的查找。而仔细分析可以看到,后者CPU开销0.,I/O开销0.。而前者呢,CPU开销1.4xxxx,I/O开销也远大于后者。因此,优化重点应该放在前者。 7、如何优化单个部分,一个复杂的SQL语句,SQL SERVER会很聪明地重组WHERE后的语句,试图匹配索引。选中带优化的步骤,选择旁边的‘属性”,再选择其中的“谓词”,将其中部分复制下来,这部分就是分解后的WHERE 语句,然后在查询界面中select * from 表 where 刚才复制下来的“谓词”。这个就是需要优化的部分,既然已经走到这一步了,大部分人应该能手动建立索引了,因为这里的WHERE语句比之前的肯定简单不少。(在我项目中原始SELECT语句的WHERE部分有个条件组合,涉及6个字段,提取出来要优化的部分就4个条件,涉及到3个字段。新的索引建立后,CPU占用率一下子就降低了,而且新建立的索引涉及的字段属于不常UPDATE的部分,频繁的读写操作不会影响UPDATE的效率) 8、

标签: sql server?

本文链接地址:https://www.jiuchutong.com/biancheng/349423.html 转载请保留说明!

上一篇:SQL SERVER 删除重复内容行(sqlserver删除重复)

下一篇:数据库高并发情况下重复值写入的避免 字段组合约束(数据库高并发怎么解决)

  • 递延所得税负债计算公式
  • 别人公司过账用自己的银行卡会查吗
  • 小规模交了增值税还要交什么
  • 土地增值税清算的条件
  • 融资租赁与按揭贷款区别
  • 成品油发票如何同步
  • 差旅费企业所得税扣除
  • 4s店改装车后卖车合法吗
  • 车间固定资产折旧属于什么科目
  • 个人开增值税普通发票税率
  • 银行本票通俗
  • 增值税留抵还需要交税吗
  • 资源税征收管理纳税期限
  • 中央财政补贴政策
  • 公园门票可以开发票吗
  • 居民企业的判定条件
  • 抵扣进项税有期限吗
  • 什么情况财务费用是负数
  • 公司组织的团建受伤算工伤吗
  • PHP开发之归档格式
  • 内置管理员无法激活此应用
  • 吊兰怎么养才能开花
  • 企业公益性捐赠扣除比例
  • kernel32在哪个文件夹
  • giantantispywaremain.exe是什么进程 有什么作用 giantantispywaremain进程查询
  • inclooder.exe
  • 华硕路由器登录地址
  • 像指纹一样的图形
  • 注意力机制详解
  • yii框架教程
  • 律师费怎么要回来
  • 金蝶软件凭证修改怎么做
  • Mysql半同步复制原理及问题排查
  • python如何对齐输出
  • 交易性金融资产是什么意思
  • 一般户可以付款吗
  • 自产的货物用于在建工程增值税
  • 其他应收应付如何平账
  • 下列行为免征增值税的有
  • 金税盘税务申报流程
  • 固定资产净残值和净值的区别
  • 水利建设基金的税率
  • 工程项目买保险没有合同 情况说明怎么写
  • 计提银行存款利息
  • 自助餐怎么核算成本
  • 建筑行业如何结算工程款
  • 资本化支出计入什么科目
  • 公司注册资本减资流程
  • 开立银行承兑汇票利率
  • 上年度库存商品错误如何更正
  • 支出费用的区别
  • 怎么填写专用发票信息
  • 未达起征点的收入怎么入账
  • 增值税发票抵扣多少个点
  • 怎么做好出纳帐
  • 自动清理河道垃圾船
  • mysql运行代码
  • 类似wps office的手机软件
  • nw.exe是什么进程
  • 如何在windows里保存画过的画
  • 电脑无法检测到麦克风怎么办
  • 如何解决win10系统用户名有中文
  • centos6.10安装教程
  • win10操作中心设置
  • nginx 虚拟ip
  • win10rs2是哪个版本
  • grub4dos linux
  • Win10系统安装步骤
  • [置顶] 关于UNITY5.0和高通AR4.2.3在手机上白屏的问题
  • windows 10一
  • node.js教程详细
  • shell脚本一百例
  • vue组件互相嵌套
  • flask使用celery
  • angular jsx
  • nodejs为什么性能这么好
  • 对象类型怎么填
  • 周炜老婆是干什么的
  • 陕西省国家税务总局班子成员
  • 香港居民个人转让境内股权所得个人所得税税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设