Select*fromStudent_Name;+---------+-------+---"/> Select*fromStudent_Name;+---------+-------+---">

Maison  >  Article  >  base de données  >  Quel est l'avantage de la fonction CONCAT_WS() par rapport à la fonction CONCAT() lorsque nous voulons concaténer des valeurs dans des colonnes et que la valeur de n'importe quelle colonne est NULL ?

Quel est l'avantage de la fonction CONCAT_WS() par rapport à la fonction CONCAT() lorsque nous voulons concaténer des valeurs dans des colonnes et que la valeur de n'importe quelle colonne est NULL ?

PHPz
PHPzavant
2023-09-05 16:57:13927parcourir

当我们想要连接列中的值并且任何列的值为 NULL 时,CONCAT_WS() 函数相对于 CONCAT() 函数有什么优势?

Nous savons que si un paramètre est NULL, la fonction CONCAT() renverra NULL, mais seulement lorsque le premier paramètre (c'est-à-dire le délimiteur) est NULL, la fonction CONCAT_WS() renverra NULL, et elle Tous les autres NULL sont ignorés. Lorsque nous voulons concaténer les valeurs dans une colonne et que la valeur de n'importe quelle colonne est NULL, nous pouvons dire que c'est l'avantage de la fonction CONCAT_WS() par rapport à la fonction CONCAT(). Pour le comprendre, considérons l'exemple de la table "Student_name;" Qui a les données suivantes -

mysql> Select * from Student_Name;
+---------+-------+---------+
| FName   | Mname | Lname   |
+---------+-------+---------+
| Rahul   | NULL  | Singh   |
| Gaurav  | Kumar | NULL    |
| Harshit | NULL  | Khurana |
| Yash    | Pal   | Sharma  |
+---------+-------+---------+
4 rows in set (0.00 sec)

Maintenant, supposons que nous voulions concaténer les valeurs des colonnes Fname, Mname et Lname, le résultat est le suivant -

mysql> Select CONCAT(Fname,Mname,Lname)AS Name from Student_Name;
+---------------+
| Name          |
+---------------+
| NULL          |
| NULL          |
| NULL          |
| YashPalSharma |
+---------------+
4 rows in set (0.00 sec)

Cependant, si nous utilisons la fonction CONCAT_WS(), alors ce sera ignorez NULL comme dans la requête suivante Affiché dans -

mysql> Select CONCAT_WS(' ',Fname,Mname,Lname)AS Name from student_name;
+-----------------+
| Name            |
+-----------------+
| Rahul Singh     |
| Gaurav Kumar    |
| Harshit Khurana |
| Yash Pal Sharma |
+-----------------+
4 rows in set (0.00 sec)

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer