有人可以解释我如何SELECT
一个日期,并在7 DAYS
条款中给定日期范围WHERE
的时间间隔前进?
这是我的示例SQL:
SELECT DATE(*TIMESTAMP*) + (DATE_ADD(DATE(*TIMESTAMP*), INTERVAL 7 DAY)) as `interval`
WHERE digital_lead.received <= '2014-12-16 08:37:00' AND
digital_lead.received >= '2014-11-14 08:37:00'
所以预期的输出会显示为
interval
2014-11-14
2014-11-21
2014-11-28
2014-12-05
SELECT
语句在7 DAYS
子句中的日期范围前进WHERE
。
有什么建议吗?
答案 0 :(得分:1)
在这个答案的帮助下:https://stackoverflow.com/a/2652051/2307520来自类似的问题,我能够做到这一点:
select date_add('2014-11-14 08:37:00', INTERVAL (row) DAY) FROM
(
SELECT @row := @row + 7 as row FROM
(select 0 union all select 1 union all select 3 union all select 4 union all select 5 union all select 6 union all select 6 union all select 7 union all select 8 union all select 9) t,
(select 0 union all select 1 union all select 3 union all select 4 union all select 5 union all select 6 union all select 6 union all select 7 union all select 8 union all select 9) t2,
(select 0 union all select 1 union all select 3 union all select 4 union all select 5 union all select 6 union all select 6 union all select 7 union all select 8 union all select 9) t3,
(select 0 union all select 1 union all select 3 union all select 4 union all select 5 union all select 6 union all select 6 union all select 7 union all select 8 union all select 9) t4,
(SELECT @row:=-7) q
WHERE @row<=DATEDIFF('2014-12-16 08:37:00' , '2014-11-14 08:37:00')
) z