SQL VIEW (vista)
- Pagina precedente Incremento SQL
- Pagina successiva Data SQL
Le viste sono tabelle visive.
Questo capitolo spiega come creare, aggiornare e eliminare le viste.
Frase SQL CREATE VIEW
Cos'è una vista?
In SQL, una vista è una tabella visiva basata sul risultato di una frase SQL.
Le viste contengono righe e colonne, come una tabella reale. I campi delle viste sono campi reali provenienti da una o più tabelle reali del database. Possiamo aggiungere funzioni SQL, WHERE e JOIN alle viste e possiamo anche inviare dati, come se provenissero da un'unica tabella.
Nota:Il design e la struttura del database non sono influenzati dalle funzioni, dalle condizioni o dalle espressioni join all'interno delle viste.
Sintassi di SQL CREATE VIEW
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
Nota:Le viste mostrano sempre i dati più recenti. Ogni volta che un utente consulta una vista, il motore del database ricostruisce i dati utilizzando una frase SQL.
Esempio di SQL CREATE VIEW
Le viste possono essere utilizzate all'interno di una query, di un procedura memorizzata o di un'altra vista. Aggiungendo funzioni, join ecc. alle viste, possiamo fornire agli utenti i dati desiderati in modo preciso.
Il database Northwind di esempio contiene alcune viste preinstallate. La vista "Current Product List" elenca tutti i prodotti attualmente in uso nella tabella Products. Questa vista è creata utilizzando il seguente SQL:
CREATE VIEW [Current Product List] AS SELECT ProductID,ProductName FROM Products WHERE Discontinued=No
Possiamo consultare questa vista sopra:
SELECT * FROM [Current Product List]
Un'altra vista esempio del database Northwind seleziona tutti i prodotti con un prezzo unitario superiore alla media unitaria:
CREATE VIEW [Products Above Average Price] AS SELECT ProductName,UnitPrice FROM Products WHERE UnitPrice>(SELECT AVG(UnitPrice) FROM Products)
Possiamo consultare questa vista come segue:
SELECT * FROM [Products Above Average Price]
Un'altra vista esempio proveniente dal database Northwind calcola il totale delle vendite per ogni categoria nel 1997. Nota che questa vista选取数据自另一个名为 "Product Sales for 1997" 的视图:
CREATE VIEW [Category Sales For 1997] AS SELECT DISTINCT CategoryName, Somma(ProductSales) AS CategorySales FROM [Product Sales for 1997] GROUP BY CategoryName
Possiamo consultare questa vista come segue:
SELECT * FROM [Category Sales For 1997]
Possiamo anche aggiungere condizioni alla query. Ora, dobbiamo solo vedere tutte le vendite della categoria "Beverages":
SELECT * FROM [Category Sales For 1997] WHERE CategoryName='Beverages'
Aggiorna vista SQL
Puoi aggiornare la vista utilizzando la seguente sintassi:
Sintassi di SQL CREATE OR REPLACE VIEW CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
Ora, vogliamo aggiungere la colonna "Category" alla vista "Current Product List". Aggiorniamo la vista con il seguente SQL:
CREATE VIEW [Current Product List] AS SELECT ProductID, ProductName, Category FROM Products WHERE Discontinued=No
Revoca vista SQL
Puoi eliminare una vista utilizzando il comando DROP VIEW.
Sintassi di SQL DROP VIEW
DROP VIEW view_name
- Pagina precedente Incremento SQL
- Pagina successiva Data SQL