为什么我不能 select 在 MySQL 中添加 30 分钟的所有行

why can't I select all rows added with 30 minutes in MySQL

我有一个 DATETIME 类型的 dateAdded 字段。我正在尝试查询

SELECT * FROM table WHERE dateAdded > now() - interval 30 minute

它 returns 0 行,即使在 30 分钟内创建了很多行。当我将大于号切换为小于号时,返回 table 中的每一行。我正在使用 MySQL 5.6.28 和一个 InnoDB table。什么原因可能导致这不起作用?我正在使用 DATETIME 类型对其他 tables 进行类似的查询,它工作正常。

列上使用的时区(即应用程序插入 dateAdded 数据)与发出查询的客户端使用的时区似乎不同。

SELECT NOW() - INTERVAL 30 MINUTE证明了差异。