Maison > base de données > tutoriel mysql > Comment résoudre le problème NULL lors de la concaténation de la fonction CONCAT() dans MySQL

Comment résoudre le problème NULL lors de la concaténation de la fonction CONCAT() dans MySQL

WBOY
Libérer: 2023-06-01 23:29:02
avant
3769 Les gens l'ont consulté

La requête du projet utilise la fonction d'épissage concat(). Dans cette requête, le champ épissé est nul et une exception de pointeur nul est signalée au niveau de la couche d'application.

SELECT CONCAT('1,',NULL,'2') result;
Copier après la connexion

Comment résoudre le problème NULL lors de la concaténation de la fonction CONCAT() dans MySQL

SELECT CONCAT('1,','','2') result;
Copier après la connexion

Comment résoudre le problème NULL lors de la concaténation de la fonction CONCAT() dans MySQL

Il a été prouvé par la pratique que lorsque la fonction CONCAT() est épissée, s'il y a NULL dans les paramètres épissés, le résultat est NULL.

Utilisez les méthodes suivantes pour résoudre

Méthode 1 : Utilisez la fonction IFNULL pour la définir sur une chaîne vide si elle est NULL.

SELECT CONCAT('1,',IFNULL(NULL,''),'2') result;
Copier après la connexion

Comment résoudre le problème NULL lors de la concaténation de la fonction CONCAT() dans MySQL

Méthode 2 : Utilisez la fonction CONCAT_WS. Spécifiez la connexion de chaîne avec le délimiteur

SELECT CONCAT_WS(',','1',NULL,'2') result;
Copier après la connexion

Spécifiez l'utilisation de virgules pour séparer

Comment résoudre le problème NULL lors de la concaténation de la fonction CONCAT() dans MySQL

CONCAT_WS (délimiteur, paramètre 1, paramètre 2,... paramètre n) et CONCAT (paramètre 1, paramètre 2, .. . Paramètre n)

La différence entre les deux fonctions :

CONCAT_WS() : signifie concaténer avec un séparateur, c'est-à-dire une connexion de chaîne avec un séparateur

CONCAT() : signifie concaténer des chaînes

deux La différence la plus importante est que la fonction CONCAT() renvoie directement NULL

s'il y a NULL dans le paramètre d'épissage, tandis que la fonction CONCAT_WS() ne retournera pas NULL en raison d'une valeur NULL lors de son exécution.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal