mybatis 查询时间时候为啥用不到时间字段上的索引
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis 查询时间时候为啥用不到时间字段上的索引相关的知识,希望对你有一定的参考价值。
因为时间列的值一般选择性较高(即重复值较少),这样查询优化器会先考虑用索引进行检索除非索引碎片达到一定等级,查询优化器认为表扫描比索引查询快时就不用了
还有,纠正你一点小问题,结束时间不要加00:00:00,这样会将第二天的0点数据也包括在内
虽然概率很低,但情况存在
-------------------
你把列进行转换就用不到索引了,因为转换后的列值无论与数据页还是缓存上存储的都不一致
优化器需要重新扫描表并进行计算,所以一般对列进行函数操作再会慢 参考技术A 有代码吗?
以上是关于mybatis 查询时间时候为啥用不到时间字段上的索引的主要内容,如果未能解决你的问题,请参考以下文章
mybatis返回一个count加一个字段该怎么设置返回resultType