Erste Seite Zurück Weiter Letzte Seite Übersicht Grafik

<SELECT Syntax – ISO>


Notizen:

Die Syntax des SELECT-Statement ist sehr komplex, selbst die obige Darstellung ist stark vereinfacht.
Hier dargestellt wird die Syntax gemäß ISO. Wie wir noch sehen werden, unterscheiden sich die einzelnen Dialekte leicht von dem, was die ISO vorgibt. Das betrifft syntaktische Wendungen, aber auch Klauseln, selten aber deren Funktion: wenn eine Klausel implementiert ist, funktioniert sie im Grunde bei allen Herstellern so, wie der Standard es vorschreibt.
Abweichungen sind eher da zu finden, dass einzelne Klauseln oder Statementteile weggelassen werden und andere dazu implementiert sind. So unterschieden sich die einzelnen Dialekte. Aber alle Hersteller versuchen mehr oder weniger, mit dem eigenen Sprachumfang sich an ISO-SQL immer weiter anzunähern, ohne natürlich dabei bereits bestehenden Code zu „brechen“, d.h. bereits existierende Projekte sollen tunlichst bei einer neuen Version des Servers unverändert weiter funktionieren
In Sybase' und Microsofts Transact-SQL sieht die Syntax des Select-Statements folgendermaßen aus (wiederum vereinfacht auf das Wesentliche):
SELECT [DISTINCT | ALL | TOP n [PERCENT]] { <Spaltenliste> | * } [INTO Tabellenname] FROM { <Tabellenliste> | <Joinkonstrukt> } [WHERE <Bedingung>] [GROUP BY <Gruppierungsliste> [HAVING <Bedingung>]] [ORDER BY Sortierfeld [ASC | DESC],...] [;]
Joinkonstruktion:
Tab1 [INNER | { LEFT | RIGHT | FULL } [OUTER] | CROSS] JOIN Tab2 ON
<JoinBedingung>
Einen Vergleich dieser beiden Syntaxen überlassen wir der Besprechung.