ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MySQL选择合适的索引列顺序

2021-10-25 10:31:52  阅读:375  来源: 互联网

标签:顺序 userId 查询 索引 选择性 MySQL where groupId


当不需要考虑排序和分组时,将选择性最高的列放在前面通常是很好的

只用于优化where条件的查找,能够最快得过滤出需要的行,对于在where子句中只使用了索引部分前缀列查询选择性更高

创建索引需要怎么创建,需要现确定哪个列选择性更高

经验法则考虑的是全局基数和选择性

所以选择将customer_id索引列放在第一列

选择性和基数经验法则值得研究分析,但是在where子句中的排序、分组和范围条件等其他因素,可能会对查询性能差生很大影响

案例

mysql为这个查询徐州呢了索引(groupId,userId),如果不考虑基数很合理,但查看一下userId和groupId匹配的行

groupId几乎满足标中所有行,索引基本上没什么用,需要修改应用程序代码,区分这类特殊用户和组,禁止针对这类用户和组进行查询

标签:顺序,userId,查询,索引,选择性,MySQL,where,groupId
来源: https://www.cnblogs.com/SourLemon/p/15428831.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有