gpt4 book ai didi

mysql - date_add 和 interval 在 MySQL 中如何工作?

转载 作者:太空宇宙 更新时间:2023-11-03 10:24:19 25 4
gpt4 key购买 nike

我尝试从表中选择数据时间距现在不到 1 分钟的那些行。我尝试通过以下方式进行:

SELECT datetime FROM my_table 
WHERE datetime > date_add( curdate( ) , INTERVAL -1 MINUTE )

这是我得到的:

2011-09-23 02:39:53
2011-09-23 08:10:07

这显然有问题。有人知道为什么吗?

已添加

看起来真的很奇怪。如果我使用 interval -1 hour,我会得到 4 或 7 小时前的结果(我不应该得到它们),但我会过滤 14 小时前的结果。怎么可能?

最佳答案

从过去一分钟到 future 一分钟:

SELECT * FROM my_table
WHERE datetime BETWEEN
DATE_ADD(NOW(), INTERVAL -1 MINUTE) AND
DATE_ADD(NOW(), INTERVAL 1 MINUTE)

从现在到 future 一分钟:

SELECT * FROM my_table
WHERE datetime BETWEEN
NOW() AND
DATE_ADD(NOW(), INTERVAL 1 MINUTE)

从过去一分钟到现在:

SELECT * FROM my_table
WHERE datetime BETWEEN
DATE_ADD(NOW(), INTERVAL -1 MINUTE) AND
NOW()

关于mysql - date_add 和 interval 在 MySQL 中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7528287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com