Bạn có thể chuyển đổi số ngày thành ngày bằng cách sử dụng from_days () và sau đó thực hiện kết hợp bên trong với bảng kiểm đếm (với các số liên tiếp từ 1) Số 730485 là độ lệch '2000-01-01' (chọn from_days ('2000-01-01'))
select a.* , from_days(t.tallyid+730485) from
(
select 'a' code , '2016-04-19' date1, '2016-04-21' date2
union all
select 'b'code , '2016-04-13' date1, '2016-04-14' date2
) a
inner join Tally t on t.tallyid between (TO_DAYS(a.date1)-730485) and (TO_DAYS(a.date2)-730485)