Mengembalikan Nilai Walaupun Keputusan Batal
Apabila melaksanakan pertanyaan yang mendapatkan semula medan tertentu berdasarkan pengecam, adalah perkara biasa untuk menghadapi situasi di mana ID tidak ditemui dan set keputusan kekal kosong. Walau bagaimanapun, senario tertentu menuntut pertanyaan untuk mengembalikan nilai secara konsisten, walaupun tanpa hasil.
Penyelesaian Dioptimumkan dengan IFNULL
Satu kaedah untuk mencapai ini adalah dengan menggunakan fungsi IFNULL MySQL, yang menilai hasil pertanyaan dan mengembalikan nilai yang ditentukan jika hasilnya batal. Ini membolehkan anda mengubah suai pertanyaan seperti berikut:
SELECT IFNULL( (SELECT field1 FROM table WHERE id = 123 LIMIT 1), 'not found' );
Dalam kes ini, fungsi IFNULL memastikan bahawa pertanyaan mengembalikan sama ada nilai medan jika ID ditemui atau rentetan "tidak dijumpai" jika ID tidak dijumpai. Ini mengelakkan keperluan untuk berbilang subkueri dan meningkatkan kecekapan pertanyaan.
Atas ialah kandungan terperinci Bagaimana untuk Sentiasa Mengembalikan Nilai daripada Pertanyaan MySQL, Walaupun Tiada Hasil Ditemui?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!