Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Cekap Mencari Hari Terakhir Bulan Sebelumnya dalam PostgreSQL?
Menyelesaikan Hari Terakhir Bulan Sebelumnya dalam PostgreSQL
Menentukan hari terakhir bulan sebelumnya ialah keperluan biasa dalam pertanyaan pangkalan data. Dalam PostgreSQL, terdapat kaedah yang cekap untuk mendapatkan semula rekod dalam julat tarikh yang ditentukan.
Satu pendekatan mudah ialah menggunakan fungsi date_trunc(). Untuk lajur tarikh, gunakan:
SELECT * FROM tbl WHERE my_date BETWEEN date_trunc('month', now())::date - 1 AND now()::date
Dengan menolak 1 daripada ungkapan date_trunc('month', now()) dan menghantarnya ke tarikh, anda akan mendapat hari pertama bulan sebelumnya ( cth., 1 Disember 2011). Menambah 1 kepada now()::date termasuk semua tarikh hari ini dalam julat.
Untuk lajur cap masa, pendekatan yang sedikit berbeza diperlukan:
SELECT * FROM tbl WHERE my_timestamp >= date_trunc('month', now()) - interval '1 day' AND my_timestamp < date_trunc('day', now()) + interval '1 day'
Dalam kes ini, selang waktu '1 hari' digunakan untuk memastikan bahawa hari terakhir bulan sebelumnya (mis., 31 Disember 2011) disertakan sepenuhnya dalam julat. Ungkapan selang '1 hari' pada sempadan atas memastikan bahawa "hari ini" turut disertakan.
Menggunakan kaedah ini, anda boleh menentukan dengan tepat hari terakhir bulan sebelumnya dan mendapatkan semula rekod yang termasuk dalam julat tarikh yang diingini dalam PostgreSQL.
Atas ialah kandungan terperinci Bagaimana untuk Cekap Mencari Hari Terakhir Bulan Sebelumnya dalam PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!