SQL CREATE VIEW





SQL > Modifica delle Tabelle > Create View

Le viste possono essere considerate come tabelle virtuali. Generalmente, una tabella è caratterizzata da una serie di definizioni ed è il luogo in cui vengono fisicamente memorizzati i dati. Anche una vista dispone di una serie di definizioni, generata nella parte superiore di una o più tabelle o viste, ma non rappresenta il luogo in cui i dati vengono fisicamente memorizzati.

La sintassi per creare una vista è la seguente:

CREATE VIEW "nome_di_vista" AS "istruzione_SQL ";

"istruzione_SQL" può essere una qualsiasi delle istruzioni SQL che sono state affrontate finora in questo corso.

Si veda questo semplice esempio. Si supponga di avere la seguente tabella:

Tabella Customer
Nome di ColonnaTipo di Dati
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime

e che si desideri creare una vista denominata V_Customer, in cui sono contenute solo le colonne First_Name, Last_Name e Country da questa tabella. Digitare:

CREATE VIEW V_Customer
AS SELECT First_Name, Last_Name, Country
FROM Customer;

Adesso, si dispone di una vista denominata V_Customer caratterizzata dalla seguente struttura:

View V_Customer
nome_di_colonnaTipo di Dati
First_Namechar(50)
Last_Namechar(50)
Countrychar(25)

Una vista può anche essere utilizzata per applicare le unioni a due tabelle. In questo caso, gli utenti visualizzano solo una vista anziché due tabelle e l’istruzione SQL che devono utilizzare diviene molto più semplice. Si supponga di disporre delle seguenti due tabelle:

Tabella Store_Information
Store_NameSalesTxn_Date
Los Angeles150005-Jan-1999
San Diego25007-Jan-1999
Los Angeles30008-Jan-1999
Boston70008-Jan-1999

Tabella Geography
Region_NameStore_Name
EastBoston
EastNew York
WestLos Angeles
WestSan Diego

e che si desideri creare una vista in cui sono visualizzate le informazioni relative alle vendite per regione. In tal caso è necessario rilasciare la seguente istruzione SQL:

CREATE VIEW V_REGION_SALES
AS SELECT A1.Region_Bame REGION, SUM(A2.Sales) SALES
FROM Geography A1, Store_Information A2
WHERE A1.Store_Name = A2.Store_Name
GROUP BY A1.Region_Name;

In questo modo si dispone di una vista, V_REGION_SALES, definita per memorizzare i record delle vendite realizzate in base alla regione. Se si desidera trovare il contenuto di questa vista, digitare:

SELECT * FROM V_REGION_SALES;

Risultato:

REGION SALES
East 700
West 2050

SQL CREATE INDEX >>




Copyright © 2016   1keydata.com   Tutti i diritti riservati