Dapatkan hari terakhir dalam bulan dalam SQL
Dalam pengurusan pangkalan data, selalunya perlu untuk beroperasi pada tarikh dan mengekstrak maklumat khusus daripada tarikh tersebut. Tugas biasa adalah untuk menentukan hari terakhir bulan tertentu. Panduan ini meneroka cara untuk mencapai ini dalam SQL untuk sebarang tarikh sewenang-wenangnya.
Jika anda tahu hari pertama dalam bulan itu, tambah sebulan dan tolak satu hari untuk mendapatkan hari terakhir, seperti yang ditunjukkan dalam pertanyaan di bawah:
<code class="language-sql">DATEADD(DAY, DATEADD(MONTH, '2009-05-01', 1), -1)</code>
Walau bagaimanapun, untuk menyamaratakan proses ini kepada mana-mana tarikh tertentu, penyelesaian yang lebih mantap diperlukan.
Menggunakan fungsi EOMONTH (SQL Server 2012 dan lebih baru)
SQL Server 2012 dan kemudiannya memperkenalkan fungsi EOMONTH, yang menyediakan cara mudah untuk menentukan hari terakhir bulan tersebut. Sintaksnya adalah seperti berikut:
<code class="language-sql">EOMONTH(start_date, [month_to_add])</code>
Antaranya:
start_date
ialah tarikh dari mana anda ingin mengira hari terakhir bulan itu. month_to_add
(pilihan) Menentukan offset bulan untuk ditambahkan pada start_date
sebelum mencari hari terakhir bulan itu. Contoh Penggunaan
Untuk mencari hari terakhir dalam bulan untuk tarikh tertentu, hanya gunakan fungsi EOMONTH seperti berikut:
<code class="language-sql">SELECT EOMONTH(@SomeGivenDate)</code>
Pertanyaan ini akan mengembalikan hari terakhir bulan yang mengandungi @SomeGivenDate
yang dinyatakan.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Hari Terakhir Mana-mana Bulan dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!