位置: 编程技术 - 正文

浅析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语句)

  • 个人所得税纳税记录
  • 私人大额转账要到柜台办理吗
  • 小规模纳税人劳务费税率1%
  • 增值税专票如何添加商品名称
  • 企业减免税享受什么
  • 报销交通费的会计怎么做
  • 个人所得税允许扣除的费用
  • 计提高温补贴会计分录
  • 定额发票用来干嘛
  • 网络技术服务费 税率
  • 用于非增值税应交税费
  • 288000元大写怎么写
  • 大宗物资吧
  • 积分兑换现金的软件
  • 财产清查中固定资产盘亏
  • 电子商务出来干嘛
  • linuxnl
  • 开发票时的数据可以四舍五入吗
  • 幼儿园收入如何计算
  • 清卡处于非征期是什么意思
  • 个人劳务费几个点
  • chrom无法访问
  • 怎么激活对话框取消
  • 合作社实际没有自产自销,但税务方面怎么可以提供证明
  • 哪些收入需要交消费税
  • win10开机强制进入修复模式
  • 公司承担的社保公积金怎么做账
  • 被雪覆盖的山峰
  • 租赁经营账务处理办法
  • 经营租入的固定资产是什么意思
  • 最小的成像传感器
  • php查询语句怎么写
  • 亚伯拉罕湖中的树,加拿大艾伯塔 (© Coolbiere/Getty Images)
  • linux的nano是什么意思
  • html的标签大全
  • sum(sumif)
  • 资产负债表中应交税费为负数是什么意思
  • 其他业务成本如何结转
  • 应付职工薪酬账户期末余额可能是
  • 电竞公司要求
  • 金蝶标准版怎么查应收应付款
  • 收到税控盘退费怎么做分录
  • 必要报酬率和期望报酬率谁大更好
  • 未开票收入是什么科目
  • 实际成本法如何核算
  • 以前年度的费用发票怎么入账
  • 银行定期利息怎么算一年
  • 老板买私人飞机可以避税吗
  • 宣传费税前扣除什么意思
  • 市场费用科目
  • 免增值税进项税怎么弄
  • 公司注销资本公积
  • 企业会计制度对固定资产无入账价值怎么入账
  • 受托开发软件一般做什么
  • 合并两公司的帐务处理
  • 银行回单自助打印可以打多久的记录
  • mysql怎么切换到bin目录
  • mysql5.7免安装版配置
  • mysql5.7.21安装
  • navicate创建存储过程
  • linux的日志文件
  • 重装系统需要主机吗
  • win7不能复制文件怎么办
  • win10无线网络不见了只显示飞行模式
  • 苹果mac os x 怎么样使用光盘
  • fs是什么文件
  • win7 64位系统重装后无线信号找不到的原因分析以及解决方法
  • win7修改用户密码命令
  • linux挂载啥意思
  • Unity3d_用PlayerPrefs保存和读取数组
  • The graphics pipeline ,Open GL 渲染管线
  • vue-cli lib
  • python数据结构与算法题库
  • document对象的常用方法
  • 安卓开发常用代码
  • css中position的用法
  • 江苏省发票真伪查询网站
  • 2020年职工探亲路费报销最新规定
  • 荷兰基本工资一个月多少工资
  • 个人所得税申请专项扣除有什么用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设