Die Spleißfunktion concat() wird in der Abfrage im Projekt verwendet. In dieser Abfrage ist das Spleißergebnis null und es wird eine Nullzeigerausnahme auf der Anwendungsebene gemeldet.
SELECT CONCAT('1,',NULL,'2') result;
SELECT CONCAT('1,','','2') result;
Durch die Praxis wurde bewiesen, dass, wenn die CONCAT()-Funktion gespleißt wird, Wenn die gespleißten Parameter NULL enthalten, ist das Ergebnis NULL.
Methode 1 zu lösen: Verwenden Sie die IFNULL-Funktion, wenn sie NULL ist, und setzen Sie sie auf eine leere Zeichenfolge.
SELECT CONCAT('1,',IFNULL(NULL,''),'2') result;
Methode 2: Verwenden Sie die CONCAT_WS-Funktion. Geben Sie die Zeichenfolgenverkettung mit Trennzeichen an.
SELECT CONCAT_WS(',','1',NULL,'2') result;
Geben Sie die Verwendung von Kommas zum Trennen an. Parameter 2,... Parameter n) und CONCAT (Parameter 1, Parameter 2,... Parameter n)
Der Unterschied zwischen den beiden Funktionen: #🎜🎜 #CONCAT_WS(): bedeutet Verkettung mit Trennzeichen, also Zeichenfolgenverbindung mit Trennzeichen
CONCAT(): bedeutet Verkettung von Zeichenfolgen#🎜🎜 #Die beiden Die wichtigsten Unterschiede bestehen darin, dass die Funktion CONCAT() direkt NULL zurückgibt, wenn der Spleißparameter NULL enthält.Wenn die Funktion CONCAT_WS() ausgeführt wird, wird sie vom NULL-Wert nicht beeinflusst
Das obige ist der detaillierte Inhalt vonSo lösen Sie das NULL-Problem beim Verketten der CONCAT()-Funktion in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!