Constructeurs de tableaux en PostgreSQL

Introduction

Dans PostgreSQL, un constructeur de tableau est une technique permettant de créer des tableaux, qui sont des collections de données de types similaires. Ces tableaux peuvent être unidimensionnels, bidimensionnels, multi-dimensionnels ou même imbriqués. Vous pouvez ainsi stocker et manipuler ces tableaux dans une base de données PostgreSQL.

Syntaxe des constructeurs de tableaux

La syntaxe des constructeurs de tableaux se définit en ajoutant des crochets [] au nom du type de données des éléments du tableau. Le nom du type indique le type de données des éléments du tableau.

column_name datatype []

Exemple 1 : Création d'un tableau unidimensionnel

Pour créer un tableau contenant des éléments spécifiques, vous pouvez utiliser le mot-clé ARRAY ou rédiger des tableaux sous forme de littéraux de chaîne en utilisant des accolades {}.

-- Création d'une table nommée 'example1' avec deux colonnes : 'id' et 'numbers'.
CREATE TABLE example1 (id SERIAL PRIMARY KEY, numbers INTEGER[]);

-- Utilisation du mot-clé 'ARRAY' pour insérer des tableaux d'entiers dans la colonne numbers
INSERT INTO example1 (numbers) VALUES (ARRAY[1, 2, 3, 4]);

-- Utilisation de littéraux de chaîne pour insérer des tableaux d'entiers dans la colonne numbers
INSERT INTO example1 (numbers) VALUES ('{5, 6, 7, 8}');

En exécutant l'exemple ci-dessus, vous créerez une table appelée example1 avec deux lignes. La colonne numbers contient un tableau unidimensionnel d'entiers.

Exemple 2 : Tableaux bidimensionnels

Créons maintenant une nouvelle table appelée example2 avec une colonne team qui contiendra des valeurs de type texte en deux dimensions.

-- Création d'une table nommée 'example2' avec deux colonnes : 'id' et 'team'.
CREATE TABLE example2 (id SERIAL PRIMARY KEY, team text[][]);

-- Utilisation du mot-clé 'ARRAY' pour insérer des tableaux de texte dans la colonne 'team'
INSERT INTO example2 (team) VALUES (ARRAY[['Tolu','Sophie'],['Chloe','Kemi']]);

-- Utilisation de littéraux de chaîne pour insérer des tableaux de texte dans la colonne 'team'
INSERT INTO example2 (team) VALUES ('{{"Kim","Tayo"},{"Achur","Timi"}}');

La table example2 contiendra des données combinées.

Exemple 3 : Accéder aux éléments d'un tableau

Nous allons maintenant apprendre à accéder à nos éléments de tableau à l'aide de la table example3 ci-dessous.

-- Création d'une table nommée 'example3' avec trois colonnes : 'id', 'names' et 'contacts'.
CREATE TABLE example3 (id SERIAL PRIMARY KEY, names text, contacts text[]);

-- Utilisation du mot-clé 'ARRAY' pour insérer des tableaux de texte dans la colonne 'contacts'
INSERT INTO example3 (names, contacts) VALUES ('Tolu', ARRAY['(+234)81-1765-3345','(+234)81-1265-3347']);
INSERT INTO example3 (names, contacts) VALUES ('Micheal','{"(+234)71-1700-3935","(+234)81-1905-0007"}');

Pour accéder aux éléments du tableau, nous utilisons les indices de sousscript qui s'écrivent entre crochets. Pour sélectionner le premier élément de la colonne contacts :

SELECT names, contacts[1] FROM example3;

Ce qui retournera les valeurs appropriées.

Filtrage et mise à jour

Vous pouvez également utiliser les indices de tableau avec des instructions WHERE pour filtrer les lignes.

SELECT names FROM example3 WHERE contacts[2] = '(+234)81-1905-0007';

Pour mettre à jour un élément de tableau, vous pouvez utiliser cette commande :

UPDATE example3 SET contacts[1] = '(+234)81-0000-0000' WHERE names = 'Tolu';

En vérifiant à nouveau la table example3, l'entrée correspondante aura été mise à jour.

Conclusion

Les constructeurs de tableaux en PostgreSQL vous permettent de créer, de manipuler et d’interroger des collections de données facilement. Que vous travailliez avec des tableaux unidimensionnels ou multi-dimensionnels, vous avez la flexibilité nécessaire pour gérer vos données au sein de votre base de données.

Application des constructeurs de tableaux

En apprenant à utiliser les constructeurs de tableaux, vous pouvez également les intégrer dans des projets tels que la création de sites web ou de startups. Par exemple, si vous développez une application de gestion d'équipe, vous pourriez utiliser des tableaux pour stocker les informations de contact, les compétences de chaque membre, ou même des projets en cours de manière structurée. L'utilisation de tableaux rendra le stockage et la récupération de ces informations plus efficaces.