MySQL:如何每n天按日期选择行

时间:2017-03-17 09:36:59

标签: mysql date

我需要通过ISO datetime字段获取所有行,每个" n" (例如180天)(注意:不仅是过去180天)。

例如,我需要在180天,360天等时选择每一行。

因此,例如,如果我有一个日期为2016-01-11 12:30:00的记录,那么当DATE()2016-07-09 2017-01-052017-07-04,{{{我}时,我会得到此记录1}},等等。

1 个答案:

答案 0 :(得分:0)

使用MySQL的DATEDIFF功能

演示http://rextester.com/AEIN10581

set @QUERY_DATE='2016-07-09';
SELECT * FROM `dates`
    WHERE DATEDIFF(`date`, @QUERY_DATE) % 180 = 0;

代替@QUERY_DATE,您可以使用CURDATE()作为当前日期。