Rumah >pangkalan data >tutorial mysql >Bagaimana untuk menyelesaikan masalah NULL apabila menggabungkan fungsi CONCAT() dalam MySQL
Pertanyaan dalam projek menggunakan fungsi penyambungan concat() Dalam pertanyaan ini, medan penyambungan adalah nol dan pengecualian penuding nol dilaporkan pada lapisan aplikasi.
SELECT CONCAT('1,',NULL,'2') result;
SELECT CONCAT('1,','','2') result;
Telah dibuktikan melalui amalan bahawa apabila fungsi CONCAT() disambung, jika terdapat NULL dalam parameter, hasilnya adalah NULL.
Kaedah 1: Gunakan fungsi IFNULL jika NULL dan tetapkannya kepada '' rentetan kosong.
SELECT CONCAT('1,',IFNULL(NULL,''),'2') result;
Kaedah 2: Gunakan fungsi CONCAT_WS. Tentukan gabungan rentetan dengan pembatas
SELECT CONCAT_WS(',','1',NULL,'2') result;
Nyatakan menggunakan koma untuk memisahkan
CONCAT_WS (pembatas, parameter 1, parameter 2,. ..Parameter n ) dan CONCAT (Parameter 1, Parameter 2, ... Parameter n)
Perbezaan antara dua fungsi:
CONCAT_WS() : Menunjukkan concat dengan pemisah, iaitu, penggabungan rentetan dengan pemisah
CONCAT(): Menunjukkan penggabungan rentetan
Dua perbezaan yang paling penting ialah fungsi CONCAT(), penyambungan Jika terdapat NULL dalam parameter, NULL
akan dikembalikan secara langsung Namun, apabila fungsi CONCAT_WS() dilaksanakan, ia tidak akan mengembalikan NULL
kerana nilai NULL.Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah NULL apabila menggabungkan fungsi CONCAT() dalam MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!