Untuk memastikan acara akan datang paling hampir dengan tarikh yang ditentukan dalam pangkalan data MySQL, pertanyaan yang direka dengan baik boleh digunakan. Pertimbangkan struktur jadual berikut:
EVENT_ID EVENT_NAME EVENT_START_DATE 1 test 2011-06-01 23:00:00 2 test2 2011-06-03 23:00:00 3 test3 2011-07-01 23:00:00 4 test4 2011-08-09 23:00:00 5 test5 2011-06-02 23:00:00 6 test6 2011-04-20 23:00:00
Untuk mendapatkan semula tiga acara dengan tarikh mula akan datang terdekat, gunakan pertanyaan berikut:
SELECT event_id FROM Table ORDER BY ABS(DATEDIFF(EVENT_START_DATE, NOW())) LIMIT 3;
Pertanyaan ini menggunakan fungsi ABS() untuk memastikan acara dengan tarikh mula yang lalu diabaikan. Peristiwa yang berlaku pada masa hadapan diutamakan berdasarkan tarikh mulanya dalam tertib menaik.
Sebagai alternatif, jika hanya peristiwa yang masih belum berlaku diingini, pertanyaan boleh diubah suai seperti ditunjukkan di bawah:
SELECT event_id FROM Table WHERE EVENT_START_DATE > NOW() ORDER BY EVENT_START_DATE LIMIT 3;
Pertanyaan tersuai ini menapis acara berdasarkan tarikh mulanya pada masa hadapan, memastikan hanya acara akan datang disertakan dalam keputusan.
Atas ialah kandungan terperinci Bagaimana untuk Mencari Tiga Acara Akan Datang Terdekat dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!