Memilih Rekod Terkini dengan Nilai Terbeza: Pendekatan Disemak
Soalan yang dikemukakan berkaitan dengan mendapatkan semula tiga rekod terkini daripada jadual berdasarkan pada lajur masa, dengan syarat tambahan bahawa rekod ini mesti mempunyai nilai yang berbeza dalam lajur lain, dirujuk sebagai pengecam lain. Untuk mencapai matlamat ini, pertanyaan SQL berbilang muka diperlukan.
Kekurangan Pertanyaan Asal
Pertanyaan percubaan yang mula-mula menghadapi had disebabkan susunan operasi yang wujud dalam SQL. Pengumpulan berlaku sebelum membuat pesanan, yang mengakibatkan data yang salah dikembalikan.
Pertanyaan Disemak
Untuk menangani ini, pertanyaan yang lebih canggih ialah diperlukan:
SELECT * FROM `table` WHERE `id` = ( SELECT `id` FROM `table` as `alt` WHERE `alt`.`otheridentifier` = `table`.`otheridentifier` ORDER BY `time` DESC LIMIT 1 ) ORDER BY `time` DESC LIMIT 3
Penjelasan:
Atas ialah kandungan terperinci Bagaimana untuk Memilih 3 Rekod Terkini dengan Nilai Unik dalam Lajur Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!