Databases Reference
In-Depth Information
mit der Ergebnisrelation erzeugt. Solche virtuellen Spalten kommen je nach Domä-
nentyp aufgrund spezieller Berechnungen zustande.
Unser erstes Beispiel benutzt eine arithmetische Operation.
SELECT bestell_nr, artikel_nr, bezeichnung, bestellmenge,
liefermenge, bestellmenge - liefermenge AS fehlmenge
FROM position
ORDER BY bestell_nr, artikel_nr;
Ergebnis:
bestell_nr artikel_nr bestellmenge liefermenge fehlmenge
=========== ========== ============ =========== ===========
151 G002 4 4 0
151 G003 3 3 0
151 K002 3 0 3
151 K003 1 1 0
151 L002 10 5 5
152 K001 10 10 0
152 K003 2 2 0
152 K004 12 12 0
153 G001 2 (NULL) (NULL)
153 L002 6 (NULL) (NULL)
153 L003 25 (NULL) (NULL)
153 L004 5 (NULL) (NULL)
154 G001 4 (NULL) (NULL)
154 G002 12 (NULL) (NULL)
154 G003 1 (NULL) (NULL)
Es ist sehr zu empfehlen, einen Ersatznamen (Spaltenalias) für die Überschrift der
virtuellen Spalte zu verwenden. Das erhöht die Verständlichkeit des angezeigten
Inhalts. Der Aliasname wird - wie in unserem Beispiel - nach dem Spaltenaus-
druck mit vorangestelltem AS angegeben.
Der Spaltenalias ist nicht zwingend vorgeschrieben. Vom Relationenmodell her ist
er aber notwendig, da für eine Relation verlangt wird, dass jedes Attribut einen
eindeutigen Namen hat. 14 Lässt man die Angabe eines Spaltenalias weg, dann setzt
das DBMS selbst eine Überschrift über die Spalte, die im günstigsten Fall die
Berechnungsformel enthält. Es gibt aber auch so nichts sagende Spaltenüberschrif-
ten wie ' SYSCOL01 '.
Als Beispiel für eine virtuelle Textspalte wollen wir den Kundennamen und den
Wohnort miteinander verknüpfen. Dazwischen soll noch das Wort »aus« stehen.
SELECT name || ' aus ' || ort AS "Name/Ort"
FROM kunde
14 Vgl. Kapitel 1.7.2.
 
Search WWH ::




Custom Search