Catégories :

Fonctions de chaîne et fonctions binaires (Général)

CONCAT_WS

Concatène deux chaînes ou plus, ou concatène deux ou plusieurs valeurs binaires. Si l’une des valeurs est nulle, le résultat est également nul.

L’opérateur CONCAT_WS nécessite au moins deux arguments et utilise le premier argument pour séparer tous les arguments suivants.

Voir aussi :

CONCAT

Syntaxe

CONCAT_WS( <separator> , <expression1> [ , <expressionN> ... ] )

Arguments

séparateur

Le séparateur doit répondre aux mêmes exigences que expressionN.

expressionN

Les expressions en entrée doivent toutes être des chaînes, ou toutes des valeurs binaires.

Renvoie

La fonction renvoie un VARCHAR ou BINARY qui contient les arguments 2 à N, séparés par le premier argument.

Le type de données de la valeur renvoyée est identique à celui de(s) valeur(s) d’entrée.

Notes sur l’utilisation

  • Les fonctions de métadonnées telles que GET_DDL n’acceptent que les constantes en entrée. L’entrée concaténée génère une erreur.

  • CONCAT_WS place des séparateurs entre les arguments, pas après le dernier argument. Si CONCAT_WS est appelé avec un seul argument après le séparateur, aucun séparateur n’est ajouté.

Détails du classement

Exemples

Concaténer trois chaînes avec séparateur :

SELECT CONCAT_WS(',', 'one', 'two', 'three');
+---------------------------------------+
| CONCAT_WS(',', 'ONE', 'TWO', 'THREE') |
|---------------------------------------|
| one,two,three                         |
+---------------------------------------+

Lorsqu’il n’y a qu’une seule chaîne à concaténer, CONCAT_WS n’ajoute pas de séparateur :

SELECT CONCAT_WS(',', 'one');
+-----------------------+
| CONCAT_WS(',', 'ONE') |
|-----------------------|
| one                   |
+-----------------------+