SQL > Tabellenbearbeitung > Create View 

Ansichten können als virtuelle Tabellen angesehen werden. Allgemein ließe sich sagen, dass eine Tabelle über einen Satz von Definitionen verfügt und Daten physikalisch abspeichert. Eine Ansicht verfügt ebenfalls über einen Satz von Definitionen, die auf einer oder mehreren Tabellen oder anderen Ansichten aufbauen, speichert die Daten aber nicht physikalisch ab.

Die Syntax für die Erzeugung einer Ansicht sieht folgendermaßen aus:

CREATE VIEW "SICHT_NAME" AS "SQL-Anweisung";

"SQL-Anweisung" kann irgendeine der in diesem Tutorial besprochenen Anweisungen sein.

Nehmen wir zur Verdeutlichung ein einfaches Beispiel. Dabei gehen wir von folgender Tabelle aus:

Tabelle Customer

Spalten NameDatentyp
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime

Wir möchten nun eine Ansicht mit der Bezeichnung V_Customer erzeugen, die nur die Spalten Vorname, Nachname und Land dieser Tabelle enthält. Dazu geben wir ein:

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

Wir haben nun eine Ansicht V_Customer mit folgender Struktur:

Ansicht V_Customer

Spalten NameDatentyp
First_Namechar(50)
Last_Namechar(50)
Countrychar(25)

Es ist auch möglich, mit einer Ansicht zwei Tabellen zu kombinieren. In diesem Fall haben die Anwender statt zwei Tabellen nur eine Ansicht vor sich, was die SQL-Anweisung deutlich einfacher macht. Nehmen wir an, es liegen die folgenden zwei Tabellen vor,

Tabelle Store_Information

Store_Name Sales Txn_Date
Los Angeles 1500 05.Jan.1999
San Diego 250 07.Jan.1999
Los Angeles 300 08.Jan.1999
Boston 700 08.Jan.1999

Tabelle Geography

Region_Name Store_Name
East Boston
East New York
West Los Angeles
West San Diego

und wir möchten eine Ansicht erstellen, die den Umsatz nach Regionen zeigt. Dazu würden wir folgende SQL-Anweisung verwenden:

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

Damit definieren wir eine Ansicht V_REGION_SALES, die Umsätze anhand von Regionsdatensätzen abspeichert. Um den Inhalt dieser Ansicht herauszufinden, geben wir ein:

SELECT * FROM V_REGION_SALES;

Ergebnis:

REGION SALES
East 700
West 2050


SQL CREATE INDEX >>





Copyright © 2014   1keydata.com   Alle Rechte vorbehalten.