Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mendapatkan Hari Terakhir Bulan Sebelumnya dalam PostgreSQL?

Bagaimana untuk Mendapatkan Hari Terakhir Bulan Sebelumnya dalam PostgreSQL?

Susan Sarandon
Lepaskan: 2025-01-06 09:24:41
asal
957 orang telah melayarinya

How to Get the Last Day of the Previous Month in PostgreSQL?

Menentukan Hari Terakhir Bulan Sebelumnya dalam PostgreSQL

Apabila menanyakan pangkalan data untuk mendapatkan semula rekod dalam julat tarikh tertentu, selalunya perlu memasukkan hari terakhir bulan sebelumnya. Julat ini boleh berbeza-beza setiap bulan, bergantung pada tarikh semasa.

Tanpa Fungsi

Untuk menentukan hari terakhir bulan sebelumnya tanpa menggunakan fungsi, anda boleh menggunakan pertanyaan berikut untuk lajur tarikh:

SELECT *
FROM tbl
WHERE my_date BETWEEN date_trunc('month', now())::date - 1
               AND     now()::date
Salin selepas log masuk

Fungsi date_trunc('month', now()) mengembalikan hari pertama bulan semasa. Dengan menolak satu hari daripada hasil ini menggunakan operator penolakan, kita mendapat hari terakhir bulan sebelumnya.

Untuk lajur cap masa, pertanyaannya berbeza sedikit:

SELECT *
FROM tbl
WHERE my_timestamp >= date_trunc('month', now()) - interval '1 day'
AND    my_timestamp <  date_trunc('day'  , now()) + interval '1 day'
Salin selepas log masuk

Date_trunc ('month', now()) fungsi mengembalikan permulaan bulan semasa sebagai cap waktu. Untuk mendapatkan hari terakhir pada bulan sebelumnya, kami menolak satu hari menggunakan - selang '1 hari' ungkapan.

Untuk syarat kedua, kami menambah satu hari pada date_trunc('hari' , sekarang() ) hasil menggunakan selang '1 hari' untuk memastikan julat merangkumi semua "hari ini."

Dengan Fungsi

Jika anda lebih suka menggunakan fungsi, anda boleh gunakan fungsi LAST_DAY() untuk mencapai hasil yang sama:

SELECT *
FROM tbl
WHERE my_date BETWEEN LAST_DAY(DATE_SUB(NOW(), INTERVAL 1 MONTH)) AND NOW()
Salin selepas log masuk

Fungsi ini secara eksplisit mengira hari terakhir bulan sebelumnya berdasarkan tarikh semasa.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Hari Terakhir Bulan Sebelumnya dalam PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan