mysql 负向条件查询不能使用索引

负向条件查询不能使用索引,可以优化为in查询。
负向条件有:!=、<>、not in、not exists、not like等。

优化策略A:字段选择性

1、选择性较低索引 可能带来的性能问题

2、索引选择性=索引列唯一值/表记录数;(可执行show index from tableName命令看字段的Cardinality(散列程度))

3、选择性越高索引检索价值越高,消耗系统资源越少;选择性越低索引检索价值越低,消耗系统资源越多;

4、查询条件含有多个字段时,不要在选择性很低字段上创建索引

5、可通过创建组合索引来增强低字段选择性和避免选择性很低字段创建索引带来副作用;

6、尽量减少possible_keys,正确索引会提高sql查询速度,过多索引会增加优化器选择索引的代价,不要滥用索引;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值