[Oracle SQL] Select all dates Between 2 Dates

Query cara menampilkan semua tanggal yang ada di antara dua tanggal (tanggal awal dan tanggal akhir).

Contoh : table KEGIATAN

idtgl_mulaitgl_selesai
118-AUG-1520-AUG-14
223-FEB-1523-FEB-15

Hasil yang akan ditampilkan

idtgl
118-AUG-15
119-AUG-15
120-AUG-15
2 23-FEB-15

Query untuk menampilkan datanya:

select A.ID, A.tgl_mulai + delta tgl
from KEGIATAN A,
( select level-1 as delta from dual connect by level-1 <= ( select max(tgl_selesai – tgl_mulai) from KEGIATAN) )
where A.tgl_mulai + delta <= A.tgl_selesai order by 1, 2;

Leave a Reply

Your email address will not be published. Required fields are marked *