순번이 저장된 복제용 테이블을 미리 만들어 두고 사용하세요.
SELECT idx , sdt , edt , sdt + INTERVAL lv DAY dt FROM (SELECT 1 idx, '2017-12-01' sdt, '2017-12-11' edt) data_t INNER JOIN (SELECT a * 10 + b lv FROM (SELECT 0 a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9 ) a CROSS JOIN (SELECT 0 b UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9 ) b ) copy_t WHERE lv <= DATEDIFF(edt, sdt) ORDER BY idx, lv ;