Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menjana Julat Tarikh dalam PostgreSQL?

Bagaimana untuk Menjana Julat Tarikh dalam PostgreSQL?

Linda Hamilton
Linda Hamiltonasal
2025-01-03 17:32:40944semak imbas

How to Generate a Date Range in PostgreSQL?

Menjana Julat Tarikh dengan PostgreSQL

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn