Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menyoal Berbilang Lajur dengan Cekap dengan Klausa SQL IN?
Apabila melakukan pertanyaan pada jadual berdasarkan berbilang lajur menggunakan klausa IN, membina pertanyaan tunggal dengan berbilang keadaan ATAU menjadi membosankan . Sebaliknya, seseorang boleh menggunakan pendekatan berikut:
Penyelesaian paling langsung ialah menggunakan versi tuple bagi klausa IN. Contohnya, memandangkan jadual Pengguna dengan lajur FirstName, LastName dan City, pertanyaan untuk mendapatkan semula bandar bagi senarai tuple (Nama Pertama, Nama Akhir) ialah:
SELECT City FROM User WHERE (firstName, lastName) IN (('a', 'b'), ('c', 'd'));
Pilihan lain ialah membuat jadual pementasan dengan semua kemungkinan gabungan (Nama Pertama, Nama Akhir) dan kemudian melakukan gabungan antara jadual ini dan jadual Pengguna. Walau bagaimanapun, kaedah ini memerlukan persediaan dan penyelenggaraan tambahan, yang mungkin tidak sesuai untuk set data yang besar.
Untuk senario umum, pendekatan klausa tuple IN lebih disukai kerana kesederhanaan dan fleksibilitinya. Ia menghapuskan keperluan untuk pembinaan pertanyaan kompleks atau jadual tambahan. Walau bagaimanapun, jika data carian disimpan di luar pangkalan data, kaedah alternatif seperti sambung atau subkueri mungkin diperlukan.
Atas ialah kandungan terperinci Bagaimana untuk Menyoal Berbilang Lajur dengan Cekap dengan Klausa SQL IN?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!