Catégories :

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

CONCAT , ||

Concatène une ou plusieurs chaînes ou concatène une ou plusieurs valeurs binaires.

L’opérateur || fournit une syntaxe alternative pour CONCAT et nécessite au moins deux arguments.

Voir aussi :

CONCAT_WS

Syntaxe

CONCAT( <expr> [ , <expr> ... ] )

<expr> || <expr> [ || <expr> ... ]
Copy

Arguments

expr

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

Renvoie

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

Si une valeur d’entrée est NULL, retourne NULL.

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.

Détails du classement

Exemples

Concaténer deux chaînes :

SELECT CONCAT('George Washington ', 'Carver');
Copy
+----------------------------------------+
| CONCAT('GEORGE WASHINGTON ', 'CARVER') |
|----------------------------------------|
| George Washington Carver               |
+----------------------------------------+

Concaténer deux colonnes VARCHAR : Créer une table en premier et insérer des données :

CREATE OR REPLACE TABLE concat_function_example (s1 VARCHAR, s2 VARCHAR, s3 VARCHAR);
INSERT INTO concat_function_example (s1, s2, s3) VALUES
  ('co', 'd', 'e'),
  ('Colorado ', 'River ', NULL);
Copy

Exécuter une requête :

SELECT CONCAT(s1, s2)
  FROM concat_function_example;
Copy
+-----------------+
| CONCAT(S1, S2)  |
|-----------------|
| cod             |
| Colorado River  |
+-----------------+

Concaténer plus de deux chaînes :

SELECT CONCAT(s1, s2, s3)
  FROM concat_function_example;
Copy
+--------------------+
| CONCAT(S1, S2, S3) |
|--------------------|
| code               |
| NULL               |
+--------------------+

Utilisez la fonction IFF avec la fonction CONCAT pour concaténer des chaînes qui ne sont pas NULL :

SELECT CONCAT(
    IFF(s1 IS NULL, '', s1),
    IFF(s2 IS NULL, '', s2),
    IFF(s3 IS NULL, '', s3)) AS concat_non_null_strings
  FROM concat_function_example;
Copy
+-------------------------+
| CONCAT_NON_NULL_STRINGS |
|-------------------------|
| code                    |
| Colorado River          |
+-------------------------+

Utiliser l’opérateur de concaténation || au lieu de la fonction :

SELECT 'This ' || 'is ' || 'another ' || 'concatenation ' || 'technique.';
Copy
+--------------------------------------------------------------------+
| 'THIS ' || 'IS ' || 'ANOTHER ' || 'CONCATENATION ' || 'TECHNIQUE.' |
|--------------------------------------------------------------------|
| This is another concatenation technique.                           |
+--------------------------------------------------------------------+