Masalah:
Anda perlu mendapatkan semula senarai tarikh antara dua tarikh yang ditentukan , inklusif, daripada pangkalan data PostgreSQL. Sebagai contoh, memandangkan tarikh mula 29 Jun 2012 dan tarikh tamat 3 Julai 2012, output yang dikehendaki ialah:
29 June 2012 30 June 2012 1 July 2012 2 July 2012 3 July 2012
Penyelesaian:
Dalam PostgreSQL, anda boleh menjana urutan tarikh dalam julat dengan cekap menggunakan fungsi generate_series(). Pertanyaan berikut akan memberikan output yang diingini:
select CURRENT_DATE + i from generate_series(date '2012-06-29'- CURRENT_DATE, date '2012-07-03' - CURRENT_DATE ) i
Sintaks alternatif yang lebih ringkas ialah:
select i::date from generate_series('2012-06-29', '2012-07-03', '1 day'::interval) i
Kedua-dua pertanyaan akan menjana julat tarikh yang ditentukan dan anda boleh melaraskan selang parameter yang diperlukan untuk menjana julat berdasarkan unit masa yang berbeza, seperti jam, minggu atau bulan.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Julat Tarikh dalam PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!