我需要通过 ISO datetime
字段获取每“n”(例如 180)天的所有行(注意:不仅是最近 180 天)。
例如,我需要选择 180 天、360 天等的每一行。
例如,如果我有一条日期为 2016-01-11 12:30:00
的记录,我将在 DATE()
时获取此记录是 2016-07-09
、2017-01-05
、2017-07-04
等。
最佳答案
使用DATEDIFF
MySQL的功能
演示:http://rextester.com/AEIN10581
set @QUERY_DATE='2016-07-09';
SELECT * FROM `dates`
WHERE DATEDIFF(`date`, @QUERY_DATE) % 180 = 0;
您可以使用 CURDATE()
代替 @QUERY_DATE
,来表示当前日期。
关于MySQL:如何按日期每n天选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42853871/