3.41. 可以使用多少列创建索引?
任何标准表最多可以创建16个索引列。在使用索引的同时,还应该了解 MySQL 中索引存在的限制,以便在索引应用中尽可能地避开限制锁带来的问题。下面列出了目前 MySQL 中与索引使用相关的限制。
- MyISAM 引擎索引键长度的综合不能超过 1000 字节;
- BLOB 和 TEXT 类型的列只能创建前缀索引;
- MySQL 目前不支持函数索引;
- 使用不等于(
!=
或者<>
)的时候,MySQL 无法使用索引; - 过滤字段使用了函数运算后,无法使用索引;
- join 语句中的 join 条件字段类型不一致的时候,MySQL 无法使用索引;
- 使用 LIKE 操作的时候如果条件以通配符开始(如
'%abc'
)时,MySQL 无法使用索引; - 使用非等值查询的时候(Hash 索引仅能满足
'='
,'IN'
和'<=>'
查询,不能使用范围查询),MySQL 无法使用Hash索引;
使用索引的时候,必须注意上面的这些限制,尤其是要注意无法使用索引的情况,因为这很容易造成极大的性能隐患。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论