MsSQL   发布时间:2022-05-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了sql – 聚簇索引比带有包含的非聚集索引更快吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Better to use a Clustered index or a Non-Clustered index with included columns?3个
我有一个表格,其中列a,b,c,d,e,f,g大约有500,000行.

有一个查询经常运行,它执行SELECT * FROM表WHERE a = @a AND b = @b AND c = @c.

在a,b和c上创建聚簇索引是否更好?或者我最好在a,b和c INCLUDE(d,g)上创建非聚集索引.

自发出SELEct *以来,不确定include会帮助加快查询速度.

任何帮助,将不胜感激!

解决方法

聚簇索引对于SELECT来说是最快的,但它可能不一定是正确的选择.

聚簇索引确定记录的物理存储顺序(这就是为什么每个表只能有一个).因此,然它对于THAT查询来说是最快的,但它可能会减慢其他查询的速度,并且如果其中一个列发生更改,则可能会更新和插入Kill,这可能意味着需要对记录进行物理重新定位.

如果更新了任何这些字段(包括包含的字段),则INCLUDE将以额外存储和额外索引维护为代价再次加速该查询.

我将在a,b和c上使用非聚集索引启动,并查看是否可以将性能提升到合理的水平.更多的东西可能只是在一个区域的交易速度,在另一个区域的缓慢.

大佬总结

以上是大佬教程为你收集整理的sql – 聚簇索引比带有包含的非聚集索引更快吗?全部内容,希望文章能够帮你解决sql – 聚簇索引比带有包含的非聚集索引更快吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:bcdef