- WHERE 条件,GROUP BY,ORDER BY 里用不到的字段,索引的价值是快速定位,如果起不到定位的字段通常是不需要创建索引的,因为索引是会占用物理空间的。
- 字段中存在大量重复数据,不需要创建索引,比如性别字段,只有男女,如果数据库表中,男女的记录分布均匀,那么无论搜索哪个值都可能得到一半的数据。在这些情况下,还不如不要索引,因为 MySQL 还有一个查询优化器,查询优化器发现某个值出现在表的数据行中的百分比很高的时候,它一般会忽略索引,进行全表扫描。
- 表数据太少的时候,不需要创建索引;
- 经常更新的字段不用创建索引,比如不要对电商项目的用户余额建立索引,因为索引字段频繁修改,由于要维护 B+Tree的有序性,那么就需要频繁的重建索引,这个过程是会影响数据库性能的。
mysql什么时候不需要建立索引
hjx_dou2024-06-19 22:30
相关推荐
陌上丨5 小时前
Redis的Key和Value的设计原则有哪些?AI_56785 小时前
AWS EC2新手入门:6步带你从零启动实例ccecw6 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错JH30736 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践数据知道6 小时前
PostgreSQL 核心原理:如何利用多核 CPU 加速大数据量扫描(并行查询)麦聪聊数据7 小时前
Web 原生架构如何重塑企业级数据库协作流?未来之窗软件服务7 小时前
数据库优化提速(四)新加坡房产系统开发数据库表结构—仙盟创梦IDEGoat恶霸詹姆斯9 小时前
mysql常用语句大模型玩家七七9 小时前
梯度累积真的省显存吗?它换走的是什么成本曾经的三心草9 小时前
redis-9-哨兵