为什么mysql的between索引会失效

为什么mysql的between索引会失效,第1张

mysql的between索引会失效是设置错误造成的,解决方法为:

1、新建一个员工表,在表上新建一个name,age,pos的复合索引。

2、索引建立好以后,如何避免索引失效。全值匹配最爱。

3、如果查询语句的where中没有name查询语句,只有age和pos,这样的话就会导致索引失效了。

4、假如查询语句只有根据name进行where查询时用到了索引。

5、要遵守最左前缀法则,指的是查询从索引的最左前列开始并且不跳过索引中的列。

6、现在假如跳过了一个查询条件,但是最前面的索引列在的话索引就不会失效了。

mysql的sql语句中可以使用between来限定一个数据的范围,例如:select * from user where userId between 5 and 7查询userId为5、6,7的user,userId范围是包含边界值的,也等同如下查询:select * from user where userId >= 5 and userId <= 7很多地方都提到between是给定的范围是大于等第一值,小于第二个值,其实这是不对的。此前我一直也是这么认为,通过实验,结论是包含两边的边界值,如果实在拿不准,可以采用>= 、<=的方式来指定条件。另外 not between的范围是不包含边界值。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7262933.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存