PostgreSQL Crea vista con esempio
Che cos'è la PostgreSQL Visualizza?
In PostgreSQL, una vista è una pseudo-tabella. Ciò significa che una vista non è una tabella reale. Tuttavia, possiamo SELEZIONARLO come una normale tabella. Una vista può avere tutte o alcune colonne della tabella. Una vista può anche essere una rappresentazione di più di una tabella.
Le tabelle sono chiamate tabelle di base. Quando si crea una vista, è sufficiente creare una query e darle un nome, rendendolo uno strumento utile per avvolgere query complesse e di uso comune.
Creazione PostgreSQL Visualizzazioni
Per creare un PostgreSQL view, utilizziamo l'istruzione CREATE VIEW. Ecco la sintassi di questa affermazione:
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
Il parametro OR REPLACE sostituirà la vista se esiste già. Se omesso e la vista esiste già, verrà restituito un errore.
Il parametro view-name è il nome della vista che devi creare.
Le condizioni WHERE sono opzioni e devono essere soddisfatte affinché qualsiasi record possa essere aggiunto alla vista.
Considera la tabella dei prezzi riportata di seguito:
Prezzo:
Creiamo una vista dalla tabella sopra:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Il comando precedente creerà una vista basata su Istruzione SELECT. Verranno aggiunti alla vista solo i record il cui prezzo è maggiore di 200. Alla vista è stato assegnato il nome Price_View. Interroghiamolo per vederne il contenuto:
SELECT * FROM Price_View;
Questo restituisce quanto segue:
Anche se la tabella di base ha 4 record, solo 2 sono stati aggiunti alla vista.
Qui possiamo aggiungere solo una colonna alla vista. Creiamo una vista che includa solo una colonna della tabella Prezzo:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Alla vista è stato assegnato il nome Price_View2 e include solo la colonna dei prezzi della tabella Prezzi. Interroghiamo la vista per vederne il contenuto:
SELECT * FROM Price_View2;
Questo restituisce quanto segue:
Cambiare PostgreSQL Visualizzazioni
La definizione di una vista può essere modificata senza doverla eliminare. Questo viene fatto utilizzando l'istruzione CREATE OR REPLACE VIEW.
Dimostriamolo aggiornando la vista denominata Price_View2.
Prezzo_Visualizzazione2:
La tabella Libro è la seguente:
Libro:
La tabella dei prezzi è la seguente:
Prezzo:
La seguente query ci aiuterà ad aggiornare la vista 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;
Interroghiamo ora la vista per vederne il contenuto:
La vista è stata modificata e ora abbiamo due colonne di due tabelle diverse. Ciò è stato ottenuto utilizzando un'istruzione JOIN.
Eliminazione PostgreSQL Visualizzazioni
Ogni volta che è necessario eliminare un file PostgreSQL visualizzazione. È possibile utilizzare l'istruzione DROP VIEW. Ecco la sintassi dell'istruzione:
DROP VIEW [IF EXISTS] view-name;
Il parametro view-name è il nome della vista da eliminare.
In questa sintassi, IF EXISTS è facoltativo. È solo richiesto. Se non lo specifichi e tenti di eliminare una vista che non esiste, riceverai un errore.
Ad esempio, per eliminare la vista denominata Price_View2, possiamo eseguire la seguente istruzione:
DROP VIEW Price_View2;
La vista verrà eliminata.
Utilizzando pgAdmin
Vediamo ora come è possibile eseguire queste azioni utilizzando pgAdmin.
Creazione PostgreSQL Visualizzazioni
Per ottenere lo stesso risultato tramite pgAdmin, procedi come segue:
Passo 1) Accedi al tuo account pgAdmin.
Passo 2)
- Dalla barra di navigazione a sinistra, fare clic su Database.
- Fare clic su Demo.
Passo 3) Digita la query nell'editor di query:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Passo 4) Fare clic sul pulsante Esegui.
Passaggio 5) Per visualizzare il contenuto della vista, procedere come segue:
- Digitare il seguente comando nell'editor di query:
- Fare clic sul pulsante Esegui.
SELECT * FROM Price_View;
Verrà restituito quanto segue:
Per creare la vista Price_View2, procedere come segue:
Passo 1) Digitare la seguente query nell'editor di query:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Passo 2 ) Fare clic sul pulsante Esegui.
Passo 3) Per visualizzare il contenuto della vista, procedere come segue:
- Digitare la seguente query nell'editor di query:
- Fare clic sul pulsante Esegui.
SELECT * FROM Price_View2;
Verrà restituito quanto segue:
Cambiare PostgreSQL Visualizzazioni
Per ottenere lo stesso risultato tramite pgAdmin, procedi come segue:
Passo 1) Accedi al tuo account pgAdmin.
Passo 2)
- Dalla barra di navigazione a sinistra, fare clic su Database.
- Fare clic su Demo.
Passo 3) Digita la query nell'editor di query:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Passo 4) Fare clic sul pulsante Esegui.
Passo 5) Digitare la seguente query nell'editor di query:
SELECT * FROM Price_View2;
Verrà restituito quanto segue:
Eliminazione PostgreSQL Visualizzazioni
Per ottenere lo stesso risultato tramite pgAdmin, procedi come segue:
Passo 1) Accedi al tuo account pgAdmin.
Passo 2)
- Dalla barra di navigazione a sinistra, fare clic su Database.
- Fare clic su Demo.
Passo 3) Digita la query nell'editor di query:
DROP VIEW Price_View2;
Passo 4) Fare clic sul pulsante Esegui.
La vista verrà eliminata.
Sommario
- A PostgreSQL view è una pseudo-tabella, il che significa che non è una tabella reale.
- È possibile creare una vista da una o più tabelle.
- Le tabelle da cui viene creata una vista sono note come tabelle di base.
- Per creare una vista, utilizziamo l'istruzione CREATE OR REPLACE VIEW.
- Per modificare la definizione di una vista, utilizziamo l'istruzione CREATE OR REPLACE VIEW.
- Per eliminare una vista, utilizziamo l'istruzione DROP VIEW.
Scarica il database utilizzato in questo tutorial