MySql 查询某一天日期格式字段走索引问题


#字段有函数不走索引

EXPLAIN select * from t_user where date(create_time)='2024-03-28';

#精确查询某一天走索引

#datetime 精确查询某一天走索引
select * from t_user where create_time >=STR_TO_DATE(CONCAT('20240328','00:00:00'),'%Y%m%d%H:%i:%s')
and create_time <=STR_TO_DATE(CONCAT('20240328','23:59:59'),'%Y%m%d%H:%i:%s');


#某天最大
SELECT STR_TO_DATE(CONCAT('20240328','00:00:00'),'%Y%m%d%H:%i:%s');
#某天最小
select STR_TO_DATE(CONCAT('20240328','23:59:59'),'%Y%m%d%H:%i:%s');

#timestamp有毫秒 建议使用 大于等于今天0时,小于明天0时
select * from t_user where create_time >=STR_TO_DATE('20240328','%Y%m%d%H:%i:%s')
and create_time < DATE_ADD('20240328',INTERVAL 1 DAY);

 

posted @ 2024-03-28 11:26  洞玄巅峰  阅读(228)  评论(0编辑  收藏  举报