位置: 编程技术 - 正文

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

  • 保险税优识别码是保单号吗
  • 税务机关代开的增值税发票要加盖发票专用章吗?
  • 企业取得被投资单位的长期股权可以享有
  • 印花税需要每月缴纳吗
  • 乙方收到甲方项目建设工程款如何记账
  • 哪些发票可以抵扣税
  • 个人承包工程怎么交个税
  • 个人所得税筹划节税
  • 期间费用包括哪三种
  • 跨年度借款利息的税务处理怎么做?
  • 存货呆滞是什么意思
  • 消费税征收环节下划的影响
  • 应交税费明细科目设置
  • 电子承兑汇票没开通能接受吗
  • 搅拌站是自用的账务如何做分录?
  • 个体户注销未分配利润要交个税吗
  • 城市创建税务人在行动
  • 差额纳税账务处理
  • 开专票必须公对公付款不然不开
  • 三十个生僻字
  • 所得税工资账载怎么算
  • 增值税普通发票可以抵扣吗
  • 外汇收入会计分录
  • 外包人员培训费入什么科目
  • 工效挂钩企业工资税前扣除有何规定?
  • 留抵税额如何抵扣
  • 前端解决页面加载白屏
  • 职工食堂的费用可以抵税吗
  • 房屋出租预收租金房产税纳税义务发生时间
  • 辅导费是什么
  • services. exe
  • 高薪技术企业的有效期是几年
  • PHP:preg_quote()的用法_PCRE正则函数
  • 城建税的会计账务处理
  • 所得税减免与纳税的关系
  • 业务招待费计入什么会计科目
  • html调查问卷简单代码
  • un删除
  • 车船税每年都要多少钱
  • 公司转让注册海外公司
  • mongodb 合并数据库
  • 普通发票能做进项吗
  • 农副产品增值税发票怎么开
  • 跨年租金如何确认收入
  • mysql大分页优化
  • 小规模增值税纳税人税率
  • 业务招待费专用会计科目
  • 存货周转率多少算低
  • 债权方的视同购进怎么会计处理?
  • 其他综合收益什么时候转留存收益什么时候转损益
  • 约当产量法下的加权平均法怎么算
  • sql的查询分析器
  • Win7 64位旗舰版系统打开应用程序提示“发生未知的软件异常0xc06d007e”的解决方法
  • 苹果mac系统怎么截屏快捷键
  • win7无法更改设置
  • win10系统如何删除账户
  • macbook屏幕自动亮度调节
  • Ghost XP SP3 YN8.0装机版 (雨林木风)
  • win10官方升级工具升级
  • linux必会的20种服务
  • win10系统更改
  • Linux安装完mysql后提示错误无法登陆mysql怎么办?
  • 安卓沉浸式状态栏框架
  • 初始学历是什么意思
  • linux中shell命令
  • javascript entries
  • python-flask
  • nodejs连接mysql的历程
  • Android: netd中DnsProxyListener的简单介绍
  • javascript制作
  • node js连接数据库
  • typescript的type
  • 简单谈谈你对公安工作的认识
  • JavaScript中的6种运算符总结
  • jQuery模仿阿里云购买服务器选择购买时间长度的代码
  • javascript总结
  • 12366纳税服务热线存在的问题
  • 巩义市公路管理局 邰江华简历
  • 深圳纳税信息查询
  • 河南省国家税务局发票查询官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设