MYSQL选择超过1天的记录

时间:2015-10-05 15:01:22

标签: mysql sql

我正在尝试从MYSQL数据库中选择超过1天或24小时的记录。我无法弄清楚为什么此声明不适用于NOW(),并且只有在我明确手动添加日期时才有效,这是您审核的代码:

date_posted在数据库表中设置为“datetime”。

以这种方式工作(不可取,仅用于测试)

SELECT count( DISTINCT my_id ) AS 'a'
FROM my_table
WHERE date_posted >= DATE_SUB( '2015-10-03 09:10:19', INTERVAL 24 HOUR )  

它应该以这种方式工作,但它会带来“0”计数结果:

SELECT count( DISTINCT my_id ) AS 'a'
FROM my_table
WHERE date_posted >= DATE_SUB( NOW(), INTERVAL 24 HOUR ) 

1 个答案:

答案 0 :(得分:1)

SELECT count( DISTINCT my_id ) AS 'a'
FROM my_table
WHERE date_posted >= subdate(current_date, 1)

此处subdate(current_date, 1)将返回您的昨天日期 如果您只想选择昨天的帖子,请使用以下内容 WHERE date_posted = subdate(current_date, 1)