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);