MySQL 如何从 datetime 类型的字段选择 date

2017-06-29 09:54:37 +08:00
 donglongtu

有个字段created_at是 datetime 类型,如何选择当天日期的数据?

SELECT * FROM data WHERE created_at = '2017-06-29';
SELECT * FROM data WHERE created_at BETWEEN '2017-06-29 00:00:00' AND '2017-06-29 23:59:59';

都不对,结果集都是空的

2908 次点击
所在节点    MySQL
2 条回复
revotu
2017-06-29 09:57:30 +08:00
MySQL 时间处理相关函数 : http://www.revotu.com/mysql-date-and-time-functions.html


WHERE DATE(created_at) = '2017-06-29'

或是

WHERE created_at LIKE '2017-06-29%'
mkeith
2017-06-29 21:18:50 +08:00
是不是 between 不包含边界啊?你换成大于等于看看,楼上方法没法走索引吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/371837

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX