如何从mysql表中选择过去日期到当前日期的数据?例如,从2009年1月1日到当前日期选择数据??
我的专栏“datetime”是日期时间日期类型。请帮助,谢谢
编辑:
如果我想从2009年1月1日起每天获取一天的数据,那么如何编写查询?使用计数和功能之间?
答案 0 :(得分:75)
select * from *table_name* where *datetime_column* between '01/01/2009' and curdate()
或使用>=
和<=
:
select * from *table_name* where *datetime_column* >= '01/01/2009' and *datetime_column* <= curdate()
答案 1 :(得分:21)
以上所有工作,如果您只想要返回日期/时间而不是输入日期,这是另一种方式
select * from *table_name* where *datetime_column* BETWEEN DATE_SUB(NOW(), INTERVAL 30 DAY) AND NOW()
答案 2 :(得分:12)
您可以使用now()
之类的:
Select data from tablename where datetime >= "01-01-2009 00:00:00" and datetime <= now();
答案 3 :(得分:0)
最新答案,但是被接受的答案对我不起作用。
如果您手动设置开始日期和结束日期(不使用curdate()
),请确保指定小时,分钟和秒(2019-12-02 23:59:59
),否则将不会得到任何提示。结束日期的结果,即:
此将包括来自2019-12-02
的记录:
SELECT *SOMEFIELDS* FROM *YOURTABLE* where *YOURDATEFIELD* between '2019-12-01' and '2019-12-02 23:59:59'
此将不包括来自2019-12-02
的记录:
SELECT *SOMEFIELDS* FROM *YOURTABLE* where *YOURDATEFIELD* between '2019-12-01' and '2019-12-02'