如何在MySQL中选择过去30天的日期?

net*_*djw 4 mysql select date nested-queries

我能以某种方式列出过去30天的日期MySQL吗?不是从桌子!

例如,我想这样:

SELECT date WHERE date BETWEEN SUBDATE(NOW(), INTERVAL 30 DAY) AND NOW();
Run Code Online (Sandbox Code Playgroud)

那可能吗?

The*_*Dog 7

我从其他人的代码中一起攻击了这个,但似乎有效:

SELECT DATE_FORMAT(m1, '%d %b %Y')
FROM (
SELECT SUBDATE( NOW() , INTERVAL 30 DAY) + INTERVAL m DAY AS m1
FROM (
select @rownum:=@rownum+1 as m from
(select 1 union select 2 union select 3 union select 4) t1,
(select 1 union select 2 union select 3 union select 4) t2,
(select 1 union select 2 union select 3 union select 4) t3,
(select 1 union select 2 union select 3 union select 4) t4,
(select @rownum:=-1) t0
) d1
) d2 
WHERE m1 <= now()
ORDER BY m1
Run Code Online (Sandbox Code Playgroud)

valex的原始代码在这里:

如何获取mysql中两个日期之间的月份列表