位置: 编程技术 - 正文

浅析SQL Server的聚焦使用索引和查询执行计划(sql-server)

编辑:rootadmin

推荐整理分享浅析SQL Server的聚焦使用索引和查询执行计划(sql-server),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql server有什么作用,sql server干嘛的,sql server的相关技术知识,sql server有什么作用,sql-server,sql server有什么作用,sql server有什么作用,sql server有什么作用,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

上一篇《浅析SQL Server 聚焦索引对非聚集索引的影响》我们讲了聚集索引对非聚集索引的影响,对数据库一直在强调的性能优化,所以这一节我们统筹讲讲利用索引来看看查询执行计划是怎样的,简短的内容,深入的理解。

透过索引来看查询执行计划

我们首先来看看第一个例子

1、默认使用索引

上述我们看到第2个查询的所需要的开销是第1个查询开销的3倍,当然其中也涉及到第1个查询只是返回一列而第2个查询返回所有列,这其中也耗费一小部分性能。对于SQL Server查询而言,它内部会利用索引来走最短的路径获取最优的性能。我们能够注意到即使将orderid作为主键,但是返回数据并不是采用的主键所自动生成的聚集索引而是非聚集索引。相信有很多人主观上觉得返回主键而且查询没有查询条件应该是走主键的聚集索引,但是有时候事实并非如此,上一篇我们已经讨论过这个问题,不再叙述。在第2个查询中利用*返回数据则是利用主键的聚集索引。

浅析SQL Server的聚焦使用索引和查询执行计划(sql-server)

2、强制主键使用聚集索引

强制使用索引我们利用With(index(索引名称))来创建,如下:

我们从上可以看出默认返回主键列时利用非聚集索引,这里我们强制让它走聚集索引,而对于第2个查询就不用说了,此时二者的开销是相当的。

3、强制使用非聚集索引

我们继续往下看,对查询强制使用非聚集索引查找,如下:

由上可见,二者开销区别之大,对于使用非聚集索引查询1返回单列,而查询2返回所有列的速度快如此之多,通过以上默认使用索引、强制使用聚集索引、强制使用非聚集索引我们知道对于对于检索所有列结果集使用主键的聚集索引是最佳选择。

总结

通过上述演示我们知道即使创建了聚集索引也不会利用聚集索引检索结果,有时候使用非聚集索引比使用聚集索引会提供更好的性能,当然不能一概而论,二者皆有使用场景。当每一次面试时谈到数据库优化时,第一想到的是索引,然后就没有下文了,如何使用索引,怎么在不同场景使用不同的索引呢?在任何数据库中索引一直都是一个很大的话题且是一个复杂的内容,复杂的内容皆是由简单堆积而成,我们必须如蜗牛般去慢慢研究,抽茧剥丝,最终才会有一个好的效果。简短的内容,深入的理解。

标签: sql-server

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

上一篇:浅析SQL Server 聚焦索引对非聚集索引的影响(sqlserver聚集函数)

下一篇:详解SQL Server中的数据类型(sql server的sql语句)

  • 税率和征收率有什么不一样
  • 税法有哪些构成要素及各要素之间有何关系
  • 在业跟续存有什么不一样
  • 微店企业和个人的区别
  • 设备采购及安装属于工程还是货物
  • 速达3000货品怎么入库
  • 个体开票
  • 代扣代缴手续费返还需要缴纳增值税吗
  • 理财产品 会计分录
  • 小规模纳税人开专票
  • 刻章的发票怎么做分录
  • 普通发票企业有用吗
  • 房产税税计入什么科目
  • 企业所得税减免政策2023
  • 修理时换下的废品配件怎么处理?
  • 银行存款明细账怎么登记及范本
  • 车间的制造费用包括哪些
  • 如何制作macos bigsur的启动盘
  • windows10如何开机启动软件
  • 如何进行网速测试设置
  • 在建工程工程款优先受偿权
  • 银行贷款需要走第三方账户,第三方需要提供身份证
  • 决算报表是财务报表吗
  • 苹果macOS Big Sur 11.0.1全新系统壁纸
  • phppost带cookie提交
  • 公司资金被税务部门冻结
  • php获取访问用户的ip
  • 总结一些php中好用的软件
  • php对数组进行排序
  • 利润分配反映什么
  • 帝国cms手机模板是什么
  • 税控盘全额抵扣发票怎么勾选
  • 进项税额转出会计分录
  • 自产自销农产品免税备案取消
  • 增值税发票上多了一个点能刮掉吗
  • 公司扣除保险费会计分录
  • 净营业周期为负数
  • 净资产包含哪些方面
  • 个人发票抬头和税号是什么
  • 存货资产评估方法
  • 上一年度所得税忘记计提了怎么办
  • 母公司无偿给子公司房屋使用谁交房产税呢
  • 汽车销售行业印章要求
  • 营改增后转让土地使用权怎么交增值税
  • 物业公司转售电费增值税
  • 企业收到海河工厂发运的乙材料,并验收入库
  • 预收账款最后怎么处理
  • 年底销项税额和进项税额要转出吗
  • 工会经费如何申请返还
  • 可以抵扣进项税的项目包括
  • 其他应付款在借方是代表公司欠人家钱吗
  • 客运运价杂费收据填写例题
  • 建设工程毛利率如何计算
  • 长期无法收回的应收账款如何处理
  • 盈余公积的构成
  • sqlserver 获取表字段
  • 去大城市发展成功的例子
  • macbook macos
  • linux的free
  • win8怎么打开系统设置
  • mac怎么卸载苹果系统
  • 如何找?
  • [图文教程]Win10家庭版怎么快速升级到win10专业版?
  • win 10电脑怎么调虚拟内存
  • win8系统文件
  • linux怎么使用ssh命令
  • angularjs表格控件
  • windows定时计划
  • opengl 2
  • linux shell脚本编程入门
  • stick function
  • linux实现shell代码
  • div与script
  • JavaScript中的数据类型分哪为两大类?
  • document.getElementById().src
  • 国家企业税务总局
  • 南通国税电子税务局
  • 浙江省国税局地址
  • 交完了契税后可以办房产证吗
  • 日本海关关税税率表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设