MySQL查询所有预期日期早于24小时的记录

3

数据库结构包含一个日期时间列,格式为“2014-09-22 21:16:00”。

我想选择所有日期时间早于24小时的内容。

示例数据:

    datetime
    2014-10-15 21:00:00
    2014-10-15 22:10:00

从表中选择所有 $datetime 早于24小时的数据。

当前时间是例如2014-10-16 21:01:00。

结果应为:

    2014-10-15 21:00:00

我希望使用当前日期时间进行SELECT查询。
我尝试了以下方法,但并没有成功:
    SELECT id, datetime FROM table WHERE customerNumber="1" AND datetime < DATE_SUB(NOW(), INTERVAL 24 HOUR)

希望有人能帮助我。:/

请在您的样本数据中显示 CustomerNumber。它是 '1' 吗?另外,我只熟悉 SQL Server,不了解 MySQL。在您的 SELECT 语句中,这个 "1" 应该用单引号括起来变成 '1' 吗? - Bob Kaufman
我尝试了以下方法,但它没有起作用:- 定义“不起作用”。 - Funk Forty Niner
2个回答

15

你可以尝试:

SELECT id, datetime FROM TABLE WHERE customerNumber="1" AND HOUR(TIMEDIFF(NOW(), datetime))>24;

1
SELECT id, datetime FROM table WHERE customerNumber="1" AND datetime < DATE_SUB(NOW(), INTERVAL 24 HOUR)

1
除了您在问题中重复使用“SELECT”语句之外,这是什么? - Bob Kaufman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接