Introduction

Lorsque vous interrogez des données dans PostgreSQL, vous souhaitez que vos résultats soient renvoyés dans un format facile à lire et à comprendre. Joindre ou concaténer des chaînes peut aider à transformer les résultats d’une requête, les rendant clairs et lisibles. La fonction PostgreSQL CONCAT() facilite l’accomplissement de cette tâche. Dans cet article, nous allons vous montrer comment utiliser la fonction de concaténation PostgreSQL pour joindre une ou plusieurs chaînes en une chaîne de sortie.

Prérequis

Quelques prérequis clés doivent être en place pour ce tutoriel:

  • Vous devrez installer PostgreSQL sur votre machine.
  • Vous devez avoir accès à l’interface de ligne de commande PostgreSQL.
  • Vous devez avoir une compréhension de base des systèmes de gestion de bases de données, en particulier PostgreSQL.

Ouvrir l’interface de ligne de commande

Afin d’exécuter des requêtes utilisant la fonction de concaténation PostgreSQL, nous devrons accéder à l’interface de ligne de commande Postgres.

Pour démarrer le processus, utilisez la commande ci-dessous pour élever vos privilèges à ceux du superutilisateur:

1
sudo su – postgres

Ensuite, utilisez la commande psql pour entrer dans l’interface:

1
PSQ

Concaténation PostgreSQL

La fonction concaténation PostgreSQL CONCAT() vous permet de joindre deux chaînes ou plus en une seule chaîne de sortie.

Créer une base de données dans PostgreSQL

Commençons par créer un exemple de base de données à utiliser dans nos exemples. Nous utiliserons l’instruction SQL suivante:

1
CRÉER UNE BASE DE DONNÉES test_db;

Pour vous connecter à la nouvelle base de données, entrez \c suivi du nom de la base de données que vous venez de créer.

Créer une table dans PostgreSQL

Notre prochaine étape consiste à créer une table dans cette nouvelle base de données. La syntaxe suivante est utilisée pour créer une table dans PostgreSQL:

1
2
CRÉER UN NOM DE TABLE DE TABLE (nom de colonne + TYPE DE DONNÉES + CONTRAINTE
);

Remarque : La contrainte est facultative. Il peut être utilisé pour définir des règles ou pour limiter le type de données dans la table.

Insérer des enregistrements dans la table PostgreSQL

Maintenant que nous avons créé une nouvelle table dans notre base de données, ajoutons-y des enregistrements. Pour insérer des données, la syntaxe suivante est utilisée:

1
2
INSÉRER DANS TABLE_NAME (COLUMN_1, COLUMN_2…, )
VALEURS (VALEUR_1, VALEUR_2…,)

Dans PostgreSQL, vous pouvez insérer plusieurs valeurs dans un enregistrement en utilisant des virgules pour séparer la liste des colonnes de la table de base de données. Nous pouvons voir comment cela fonctionne dans l’instruction INSERT ci-dessous:

1
2
3
4
5
6
7
INSÉRER DANS
utilisateurs (id, prénom, nom, âge, adresse)
VALEURS
(1, ‘justine’, ‘bibe’, 20, ‘america’),
(2, ‘ kimmy’, ‘david’, 29 ans, ‘espagne’),
(3, ‘ josh’, ‘bieber’, 25, ‘corée’);
INSÉRER 0 3

Pour vérifier que cette opération d’insertion a réussi, nous pouvons effectuer une simple instruction SELECT:

1
2
3
4
5
6
7
SÉLECTIONNEZ * PARMI les utilisateurs;
id/prénom| nom/âge / adresse
—-+————+———–+—–+———
1 | justine/bibe/20 / amérique
2| kimmy|david|29 | espagne
3| josh|bieber /25/ corée
(3 RANGÉES)

Le tableau des utilisateurs ci-dessus est l’exemple de tableau que nous utiliserons pour démontrer la fonction CONCAT() dans PostgreSQL Tm.

Exemples de concaténation PostgreSQL

Dans notre exemple, nous allons montrer comment concaténer deux chaînes en une seule en utilisant les colonnes _firstname et _lastname dans la table users.

Regardons cet exemple:

1
2
3
4
SÉLECTIONNEZ
CONCAT(first_name,  », last_name) COMME « nom complet »
PARMI
utilisateurs;

Notez que nous avons ajouté un espace entre les colonnes first_name et last_name.

Notre résultat ressemblera à ceci:

1
2
3
4
5
6
nom complet
—————
justine bibe
kimmy david
josh bieber
(3 RANGÉES)

 Capture d'écran de la fonction de concaténation PostgreSQL exemple de fonction de concaténation Instruction SQL

concaténation PostgreSQL à l’aide d’un séparateur de virgules exemple

Si vous souhaitez utiliser une virgule comme séparateur entre deux chaînes, utilisez la syntaxe indiquée dans cet exemple:

1
2
3
4
SÉLECTIONNEZ CONCAT_WS(‘,’, first_name, last_name)
COMME complete_name
DES utilisateurs
TRIER PAR first_name;

Dans ce cas, le résultat ressemblera à ce qui suit:

1
2
3
4
5
6
nom_ complet
—————
josh, bieber
justine, bibe
kimmy, david
(3 RANGÉES)

L’appel de fonction CONCAT_WS() utilisé dans cet exemple vous permet de passer un séparateur ou un délimiteur spécial, tel qu’une virgule, lors de la concaténation de chaînes. Le « WS » dans le nom de la fonction signifie « avec séparateur ».

Exemple de concaténation de valeurs NULLES PostgreSQL

L’exemple suivant montre une tentative de concaténation de valeurs NULL:

1
2
SÉLECTIONNEZ CONCAT(‘object’, NULL)
COMME result_string;

La fonction de concaténation PostgreSQL ignore simplement les arguments NULL.

concaténer PostgreSQL à l’aide de la fonction de LONGUEUR

La fonction LENGTH dans PostgreSQL renvoie la longueur de la chaîne spécifiée. Vous pouvez incorporer la valeur renvoyée par la fonction LENGTH dans une concaténation de chaînes:

1
2
3
4
SÉLECTIONNEZ last_name,
concat(‘votre nom est composé de’,
LENGTH(last_name), ‘characters’)
PARMI les utilisateurs;

La fonction CONCAT renverra le résultat suivant:

1
2
3
4
5
6
nom_last | concat
———–+—————————————
bibe / votre nom EST composé DE 4 caractères
david / votre nom EST composé DE 5 caractères
bieber | votre nom EST composé DE 6 caractères
(3 LIGNES)

Conclusion

Joindre deux chaînes ou plus en une seule peut faciliter la lecture des résultats de vos requêtes PostgreSQL et vous aider à obtenir de meilleures informations à partir de vos données. Dans cet article, nous vous avons montré comment utiliser la fonction de concaténation PostgreSQL pour joindre plusieurs chaînes en une seule chaîne de sortie et nous vous avons montré des exemples pour illustrer comment cette fonction peut être utilisée. Si vous avez suivi nos exemples, vous serez prêt à implémenter la fonction CONCAT() dans vos propres requêtes PostgreSQL.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.