SQL - Syntax
1. Schreibweise
Wie schon gesagt ist SQL eine bewusst einfache gehaltene
Abfragesprache. Dabei wird nicht zwischen Groß- und Kleinschreibung
unterschieden. Es ist also völlig egal, ob eure Abfrage so
aussieht: SUCHE ALLE AUS TABELLE xyz oder so: suche
alle aus tabelle xyz. Es hat sich allerdings ein Standard eingebürgert, SQL-Befehle GROß zu schreiben. Datenbank-,
Tabellen- und Feldnamen werden kleingeschrieben.
Datenbank-, Tabellen- und Spaltennamen
Groß- und Kleinschreibung spielt unter Windows keine Rolle, bei Unix-Systemen wie z.B. Linux oder MacOS aber schon. Denkt an die Schreibweisen. Ihr solltet euch also einen einheitlichen Stil angewöhnen, sonst kommt ihr irgendwann in richtige Probleme. Denkt an den Tipp von oben und schreibt alles klein. Und benutzt den Singular, das hat sich mittlerweile auch durchgesetzt.
Aufbau
Wenn wir mal ein paar Ausnahmen ignorieren, so setzt sich ein SQL-Statement aus den folgenden Komponenten zusammen.
[BEFEHL][Spalte/n][FROM][Tabelle/n][BEDINGUNG][SORTIER-/GRUPPENFUNKTION];
Die Bedingung und die Sortier-/Gruppenfunktionen dabei sind
optional. Außerdem können Letztere auch direkt nach dem Befehl kommen.
Dazu
später aber mehr. Ein konkretes Beispiel könnte so aussehen.
SELECT id, artikel, preis FROM produkt WHERE id < 10 AND preis > 10 ORDER BY preis DESC;
Hier suchen wir also die Werte der Spalten id, artikel und preis aus der Tabelle produkt,
wo die ID kleiner 10 und der Preis größer 10 ist. Dann wird
absteigend nach dem Preis sortiert, es kommen also zuerst die höchsten.
2. Anführungszeichen
... werden immer dann genutzt, wenn man es mit Zeichenketten zu tun hat. Dabei kann man sowohl die einfachen Hochkommata als auch die normalen Anführungszeichen benutzen.
SELECT preis FROM produkt WHERE artikel = 'Zange';
Backticks
Dabei handelt es sich um den komischen Strich neben der Backspace-Taste,
den man übrigens nur im Kombination mit der Umschalt-
und Leertaste nutzen kann. Auf diese Art von Strich muss man zurückgreifen, wenn
man zum Beispiel Tabellen oder Spalten mit sogenannten Schlüsselwörtern
benennt. Dazu gehört eigentlich alles, was im Sprachumfang von
SQL enthalten ist.
SELECT `date` FROM `table`;
Da man aber diese Backticks überhaupt nicht mag, vermeidet man alle Bezeichnungen, die direkt in SQL enthalten ist. Das erfordert zwar manchmal ein wenig Kreativität, ist meiner Meinung nach aber sicherer.
3. Die Sache mit dem Semikolon
Normalerweise wird ein SQL-Statement immer mit einem Semikolon beendet. Es gibt aber ein paar Ausnahmen. Grundsätzlich gilt dabei, dass man es bei einer(!) Abfrage nicht benötigt. Das ist bei einer Datenbankabfrage per Java oder PHP immer der Fall, da man ja nur einen Query nach dem anderen absetzen kann.