Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menjana Siri Tarikh dalam MySQL Seperti PostgreSQL's generate_series()?
Mensimulasikan fungsi generate_series() PostgreSQL dalam MySQL
Fungsi generate_series()
PostgreSQL sering digunakan untuk menjana jujukan angka. Walau bagaimanapun, MySQL tidak mempunyai persamaan langsung dengan fungsi ini. Artikel ini meneroka cara menjana jujukan serupa dalam MySQL, terutamanya apabila anda perlu menyertai semua tarikh dalam setahun.
Coretan kod berikut menyediakan penyelesaian. Ia menggunakan kaedah yang mudah dan berkesan untuk menjana julat tarikh daripada tarikh mula yang ditentukan kepada tarikh tamat sasaran. Begini cara ia berfungsi:
@num
kepada -1, digunakan sebagai pembilang. any_table
sebanyak 1 untuk setiap baris dalam @num
. Reka bentuk gelung ini adalah berdasarkan bilangan baris dalam any_table
, memastikan julat yang terhasil tidak dipotong. @num
pada tarikh mula 2011-1-1, menjana tarikh baharu untuk setiap lelaran. date_format()
untuk memformat tarikh yang dikira untuk mendapatkan rentetan tarikh yang dikehendaki. limit 365
untuk mengehadkan julat kepada 365 hari (atau 366 jika tahun lompat diambil kira). Dengan pendekatan ini, anda boleh menjana jujukan tarikh dengan cekap dan menyertainya dengan jadual sedia ada untuk melakukan analisis atau pengiraan berdasarkan set data temporal yang lengkap.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Siri Tarikh dalam MySQL Seperti PostgreSQL's generate_series()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!