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 ... FROM - Tabellen angeben

In der FROM-Klausel geben Sie die Tabellen an, aus denen Daten ausgewählt werden sollen.

Um Sätze in den angegebenen Tabellen lesen zu können, müssen Sie entweder Eigentümer dieser Tabellen sein oder das SELECT-Zugriffsrecht besitzen.


SELECT ...

FROM tabellenangabe,...



tabellenangabe

Angabe einer Tabelle, aus der Daten gelesen werden. Sie dürfen nur Tabellen derselben Datenbank angeben.


Beispiele

Aus dem Kartesischen Produkt der Tabellen KUNDE und AUFTRAG werden die Spalten KNR der Tabelle KUNDE und ANR der Tabelle AUFTRAG ausgewählt. Dabei werden die Tabellen KUNDE und AUFTRAG innerhalb des SELECT-Ausdrucks durch Vergabe von Korrelationsnamen umbenannt. Jede Spaltenangabe, die sich innerhalb des SELECT-Ausdrucks auf KUNDE oder AUFTRAG bezieht, muss dann mit den Korrelationsnamen qualifiziert werden. Korrelationsnamen können verwendet werden, um Spalten eindeutig qualifizieren zu können, um lange Tabellennamen abzukürzen oder in SELECT-Ausdrücken jeweils zum Zusammenhang passende Tabellennamen anzugeben. Aus dem Kartesischen Produkt der Tabellen KUNDE und AUFTRAG werden die Spalten A.KNR und B.ANR ausgewählt:

SELECT A.knr, B.anr FROM kunde A, auftrag B

Ergebnistabelle

knr

anr

100

200

100

210

100

211

usw.

usw.

107

300

107

305


Die Tabelle AUFSTAT wird in AUFTRAGSSTATUS umbenannt und die Spalten ASTNR und ASTXT werden unter den neuen Namen AUFTRAGSSTATUSNUMMER und AUFTRAGSSTATUSTEXT ausgewählt. Werden in der SELECT-Liste mit „*“ alle Spalten ausgewählt, dann können mit „(spalte, ...)“ in tabellenangabe neue Spaltennamen vergeben werden. Im Gegensatz zur AS-Klausel in der SELECT-Liste können jedoch nicht einzelne Spaltennamen umbenannt werden. Es können nur alle Spaltennamen umbenannt werden. Die neuen Namen müssen statt der alten in der SELECT-Liste und in der WHERE-, GROUP BY- und HAVING-Klausel verwendet werden.

SELECT * FROM aufstat

AS auftragsstatus (auftragsstatusnummer, auftragsstatustext)


Wird eine Tabelle in der FROM-Klausel mehrfach angegeben, wie beim Join einer Tabelle mit sich selbst, dann müssen Korrelationsnamen definiert werden, um Spalten eindeutig angeben zu können. Referenzen in der SELECT-Liste und den WHERE-, GROUP BY- und HAVING-Klauseln müssen diese Korrelationsnamen statt der ursprünglichen Tabellennamen verwenden.

SELECT A.knr, B.knr FROM kunde A, kunde B