Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

SELECT-Ausdruck


select_ausdruck ::=

SELECT [ALL | DISTINCT] select_liste
FROM tabellenangabe,...
[WHERE suchbedingung]
[GROUP BY spalte,...]
[HAVING suchbedingung]

select_liste ::= { * | { tabelle.* | ausdruck [[AS] spalte] } }


Für alle Klauseln gilt:

  • Die angegebene Reihenfolge der Klauseln muss eingehalten werden.

  • Spaltennamen müssen eindeutig sein. Kommt ein Spaltenname in mehreren Tabellen vor, so müssen Sie den Spaltennamen mit dem Tabellennamen qualifizieren. Wenn Sie eine Tabelle mit einem Korrelationsnamen für die Dauer der SELECT-Anweisung umbenennen (siehe Abschnitt „Tabellenangabe“), dürfen Sie nur noch den Korrelationsnamen verwenden.

    Beispiel

    SELECT a.knr, l.lsatz

    FROM auftrag a, leistung l WHERE a.anr=l.anr

Auswertung von SELECT-Ausdrücken

SELECT-Ausdrücke werden in folgender Reihenfolge ausgewertet:

  1. Aus allen Tabellenangaben in der FROM-Klausel wird das Kartesische Produkt gebildet..

  2. Ist eine WHERE-Klausel angegeben, wird die WHERE-Suchbedingung auf alle Sätze des Kartesischen Produkts angewendet. Es werden die Sätze ausgewählt, für die die Suchbedingung wahr ergibt.

  3. Ist eine GROUP BY-Klausel angegeben, werden die in Punkt 2 bestimmten Sätze zu Gruppen zusammengefasst.

  4. Ist eine HAVING-Klausel angegeben, wird die HAVING-Suchbedingung auf alle Gruppen angewendet. Es werden die Gruppen ausgewählt, die die Suchbedingung erfüllen.

  5. Enthält die SELECT-Liste eine Mengenfunktion und ist die Ergebnistabelle noch nicht gruppiert, werden alle Sätze der Ergebnistabelle zu einer Gruppe zusammengefasst.

  6. Ist die Ergebnistabelle gruppiert (eine oder mehrere Gruppen), wird die SELECT-Liste für jede Gruppe ausgewertet.

    Ist die Ergebnistabelle nicht gruppiert, wird die SELECT-Liste für jeden Ergebnissatz ausgewertet.

    Die resultierenden Sätze bilden die Ergebnistabelle des SELECT-Ausdrucks.