msyql数据表时间字段为datetime时候,想要查询某一天数据

第一种

SELECT * from od WHERE create_time >= '2021-02-25 00:00:00' AND create_time <= '2021-02-25 23:59:59'  ;
SELECT * from od WHERE create_time >= '2021-02-25' AND create_time < '2021-02-26'

在这里插入图片描述
第二种

select * from od where date(create_time)='2021-02-25';

在这里插入图片描述
可以明显看到第一种查询效率要高的多
explain一下

在这里插入图片描述
在这里插入图片描述
一个用到了索引,查询部分,一个全表扫描,没有用索引

between写法亦可

SELECT * from od WHERE create_time BETWEEN '2021-02-25 00:00:00' AND '2021-02-25 23:59:59'  

在这里插入图片描述

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐