mysql 自定义两个日期,并根据自定义间隔天数,列出两个日期之间的日期列表
select b.the_day from (
select @no:=@no+1 as no, a.the_day from
(
select adddate('1970-01-01',t4.i * 10000 + t3.i * 1000 + t2.i * 100 + t1.i * 10 + t0.i) the_day
from
(select @no:=0) n,
( select 0 i union select 1 union select 2 union select 3 union select 4
union select 5 union select 6 union select 7 union select 8 union select 9 ) t0,
( select 0 i union select 1 union select 2 union select 3 union select 4
union select 5 union select 6 union select 7 union select 8 union select 9 ) t1,
( select 0 i union select 1 union select 2 union select 3 union select 4
union select 5 union select 6 union select 7 union select 8 union select 9 ) t2,
( select 0 i union select 1 union select 2 union select 3 union select 4
union select 5 union select 6 union select 7 union select 8 union select 9 ) t3,
( select 0 i union select 1 union select 2 union select 3 union select 4
union select 5 union select 6 union select 7 union select 8 union select 9 ) t4
) as a
where the_day between date_format(20220101, '%Y-%m-%d') and date_format(20231231, '%Y-%m-%d')
having mod(no, 7) = 1) as b