PostgreSQL Créer une vue avec un exemple
Qu’est ce qu' PostgreSQL Voir?
In PostgreSQL, une vue est une pseudo-table. Cela signifie qu'une vue n'est pas une vraie table. Cependant, nous pouvons le SELECT comme une table ordinaire. Une vue peut contenir tout ou partie des colonnes du tableau. Une vue peut également être une représentation de plusieurs tables.
Les tableaux sont appelés tableaux de base. Lors de la création d'une vue, il vous suffit de créer une requête puis de lui donner un nom, ce qui en fait un outil utile pour encapsuler des requêtes complexes et couramment utilisées.
La création PostgreSQL Vues
Créer un PostgreSQL vue, nous utilisons l'instruction CREATE VIEW. Voici la syntaxe de cette instruction :
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
Le paramètre OR REPLACE remplacera la vue si elle existe déjà. En cas d'omission et que la vue existe déjà, une erreur sera renvoyée.
Le paramètre view-name est le nom de la vue que vous devez créer.
La ou les conditions WHERE sont des options et elles doivent être satisfaites pour qu'un enregistrement soit ajouté à la vue.
Considérez le tableau des prix ci-dessous :
Le prix :
Créons une vue à partir du tableau ci-dessus :
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
La commande ci-dessus créera une vue basée sur le Instruction SELECT. Seuls les enregistrements dont le prix est supérieur à 200 seront ajoutés à la vue. La vue a reçu le nom Price_View. Interrogons-le pour voir son contenu :
SELECT * FROM Price_View;
Cela renvoie les éléments suivants :
Même si la table de base contient 4 enregistrements, seuls 2 ont été ajoutés à la vue.
Ici, nous ne pouvons ajouter qu'une seule colonne à la vue. Créons une vue qui ne comprenait qu'une seule colonne du tableau Prix :
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
La vue a reçu le nom Price_View2 et inclut uniquement la colonne prix de la table Prix. Interrogons la vue pour voir son contenu :
SELECT * FROM Price_View2;
Cela renvoie les éléments suivants :
Changer PostgreSQL Vues
La définition d'une vue peut être modifiée sans avoir à la supprimer. Cela se fait à l'aide de l'instruction CREATE OR REPLACE VIEW.
Montrons cela en mettant à jour la vue nommée Price_View2.
Prix_View2 :
La table Livre est la suivante :
Livre:
Le tableau des prix est le suivant :
Le prix :
La requête suivante nous aidera à mettre à jour la vue Price_View2 :
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Interrogons maintenant la vue pour voir son contenu :
La vue a été modifiée et nous avons désormais deux colonnes de deux tables différentes. Ceci a été réalisé à l'aide d'une instruction JOIN.
Suppression PostgreSQL Vues
Chaque fois que vous devez supprimer un PostgreSQL voir. Vous pouvez utiliser l'instruction DROP VIEW. Voici la syntaxe de l'instruction :
DROP VIEW [IF EXISTS] view-name;
Le paramètre view-name est le nom de la vue à supprimer.
Dans cette syntaxe, IF EXISTS est facultatif. C'est seulement obligatoire. Si vous ne le spécifiez pas et tentez de supprimer une vue qui n'existe pas, vous obtiendrez une erreur.
Par exemple, pour supprimer la vue nommée Price_View2, nous pouvons exécuter l'instruction suivante :
DROP VIEW Price_View2;
La vue sera supprimée.
Utiliser pgAdmin
Voyons maintenant comment ces actions peuvent être effectuées à l'aide de pgAdmin.
La création PostgreSQL Vues
Pour accomplir la même chose via pgAdmin, procédez comme suit :
Étape 1) Connectez-vous à votre compte pgAdmin.
Étape 2)
- Dans la barre de navigation à gauche, cliquez sur Bases de données.
- Cliquez sur Démo.
Étape 3) Tapez la requête dans l'éditeur de requêtes :
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Étape 4) Cliquez sur le bouton Exécuter.
Étape 5) Pour afficher le contenu de la vue, procédez comme suit :
- Tapez la commande suivante dans l'éditeur de requête :
- Cliquez sur le bouton Exécuter.
SELECT * FROM Price_View;
Cela renverra ce qui suit :
Pour créer la vue Price_View2, procédez comme suit :
Étape 1) Tapez la requête suivante dans l'éditeur de requête :
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Étape 2) Cliquez sur le bouton Exécuter.
Étape 3) Pour voir le contenu de la vue, procédez comme suit :
- Tapez la requête suivante dans l'éditeur de requête :
- Cliquez sur le bouton Exécuter.
SELECT * FROM Price_View2;
Cela renverra ce qui suit :
Changer PostgreSQL Vues
Pour accomplir la même chose via pgAdmin, procédez comme suit :
Étape 1) Connectez-vous à votre compte pgAdmin.
Étape 2)
- Dans la barre de navigation à gauche, cliquez sur Bases de données.
- Cliquez sur Démo.
Étape 3) Tapez la requête dans l'éditeur de requêtes :
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Étape 4) Cliquez sur le bouton Exécuter.
Étape 5) Tapez la requête suivante dans l'éditeur de requête :
SELECT * FROM Price_View2;
Cela renverra ce qui suit :
Suppression PostgreSQL Vues
Pour accomplir la même chose via pgAdmin, procédez comme suit :
Étape 1) Connectez-vous à votre compte pgAdmin.
Étape 2)
- Dans la barre de navigation à gauche, cliquez sur Bases de données.
- Cliquez sur Démo.
Étape 3) Tapez la requête dans l'éditeur de requêtes :
DROP VIEW Price_View2;
Étape 4) Cliquez sur le bouton Exécuter.
La vue sera supprimée.
Résumé
- A PostgreSQL view est une pseudo-table, ce qui signifie que ce n'est pas une vraie table.
- Une vue peut être créée à partir d'une ou plusieurs tables.
- Les tables à partir desquelles une vue est créée sont appelées tables de base.
- Pour créer une vue, nous utilisons l'instruction CREATE OR REPLACE VIEW.
- Pour modifier la définition d'une vue, nous utilisons l'instruction CREATE OR REPLACE VIEW.
- Pour supprimer une vue, nous utilisons l'instruction DROP VIEW.
Téléchargez la base de données utilisée dans ce tutoriel