Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menghalang Nilai NULL daripada Merosakkan Keputusan CONCAT MySQL Saya?
Nilai NULL Mengherotkan Fungsi CONCAT dalam MySQL
Melaksanakan pertanyaan CONCAT pada jadual yang mengandungi nilai NULL boleh membawa kepada hasil yang tidak dijangka. Dalam contoh yang diberikan, nilai NULL dalam medan tertentu menyebabkan keseluruhan hasil CONCAT menjadi NULL.
Untuk menangani perkara ini, fungsi COALESCE boleh digunakan untuk mengendalikan nilai NULL dengan anggun. COALESCE menerima dua hujah: medan yang sedang dinilai dan nilai untuk digantikan jika medan tersebut adalah NULL. Dengan membalut setiap medan yang berpotensi NULL dalam COALESCE, kita boleh menggantikan nilai NULL dengan rentetan kosong ('').
Pertanyaan yang diubah suai dengan COALESCE digunakan:
SELECT CONCAT(COALESCE(`affiliate_name`,''),'-',COALESCE(`model`,''),'-',COALESCE(`ip`,''),'-',COALESCE(`os_type`,''),'-',COALESCE(`os_version`,'')) AS device_name FROM devices
Pertanyaan ini kini akan kembali hasil yang diingini, mengabaikan nilai NULL dan menggabungkan nilai bukan NULL ke dalam rentetan tunggal:
cs1-Dell-10.125.103.25-Linux-Fedora cs2-Dell-10.125.103.26-Linux-Fedora cs3-Dell-10.125.103.27- cs4-Dell-10.125.103.28-
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghalang Nilai NULL daripada Merosakkan Keputusan CONCAT MySQL Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!