Cara Mencuba Berbilang PILIHAN Sehingga Keputusan Tersedia
Mencari baris tertentu dalam jadual boleh melibatkan berbilang kriteria dengan tahap yang berbeza-beza. ketepatan. Pendekatan biasa ialah menggunakan berbilang pernyataan SELECT dengan ketepatan yang semakin meningkat sehingga padanan ditemui, seperti:
SELECT * FROM image WHERE name LIKE 'text' AND group_id = 10 LIMIT 1
SELECT * FROM image WHERE name LIKE 'text' LIMIT 1
SELECT * FROM image WHERE group_id = 10 LIMIT 1
Adakah Terdapat Penyelesaian Ekspresi Tunggal?
Walaupun tidak mungkin untuk menulis satu ungkapan yang merangkumi semua pernyataan SELECT, operator UNION ALL boleh digunakan untuk menggabungkan berbilang PILIH penyataan ke dalam satu pertanyaan:
SELECT * FROM image WHERE name = 'name105' AND group_id = 10 UNION ALL SELECT * FROM image WHERE name = 'name105' UNION ALL SELECT * FROM image WHERE group_id = 10 LIMIT 1;
Pertanyaan ini dengan cekap mendapatkan semula baris pertama yang sepadan dengan mana-mana syarat yang ditentukan, dengan mengambil kira indeks untuk pelaksanaan pantas.
Mengendalikan Parameter Carian Berbilang
Untuk kes dengan berbilang parameter carian, pendekatan UNION ALL boleh dilanjutkan dengan menambah penyataan SELECT tambahan untuk setiap kombinasi parameter. Sebagai contoh, jika mencari imej dengan nama atau ID kumpulan tertentu:
SELECT * FROM image WHERE name = 'name105' AND author = 'author10' UNION ALL SELECT * FROM image WHERE name = 'name105' UNION ALL SELECT * FROM image WHERE author = 'author10' LIMIT 1;
Pertimbangan Relevan
Walaupun pendekatan ini menggabungkan berbilang kriteria carian secara berkesan, pendekatan ini tidak menganggap relevan. Dalam kes di mana perkaitan adalah penting, pengisihan atau penapisan tambahan dalam pernyataan SELECT mungkin diperlukan sebelum menggunakan UNION ALL.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Berbilang Penyata PILIH dengan Cekap untuk Mencari Baris Padanan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!