SQL: Data Manipulation Language
Willemers Informatik-Ecke

INSERT

Mit dem Befehl INSERT werden neue Datensätze in einer Tabelle eingefügt.

INSERT INTO artikel (artikel_id, bezeichnung, preis) VALUES (12, 'Kartoffelchips', 0.79);

UPDATE

Der Befehl UPDATE ist dafür da, bestehende Datensätze zu verändern.

Der folgende Befehl senkt die Preise alle Artikel um 10 Prozent.

UPDATE artikel SET preis = preis*0.9
Alle Sätze zu reduzieren werden die Kunden sicher gut finden. In der Regel werden Änderungen aber nur einen Teil der Datensätze betreffen. Darum werden diese mit Hilfe einer WHERE-Klausel eingeschränkt.

Im folgenden Beispiel werden die Preise aller Artikel um 10 Prozent gesenkt, die weniger als einen Euro kosten.

UPDATE artikel SET preis = preis*0.9 WHERE preis<1

DELETE

Der Befehl DELETE löscht Einträge in einer Tabelle. Ohne weitere Angabe löscht er alle Einträge, was in der Regel nicht gewünscht ist. Um bestimmte Sätze zu löschen, wird auch hier die WHERE-Klausel eingesetzt.
DELETE FROM artikel WHERE preis>1
Damit werden alle Artikel gelöscht, deren Preis höher als ein Euro beträgt.

SELECT

Der Befehl SELECT bewirkt eine Anfrage. Der folgende Befehl zeigt von den Artikeln, die billiger als 1 Euro sind die Bezeichnung und den Preis.
SELECT bezeichnung, preis FROM artikel WHERE preis<1

Projektion

Direkt auf das Schlüsselwort SELECT folgen die Spaltennamen. Sollen alle Spalten angezeigt werden, kann hier ein Stern als Wildcard verwendet werden. Durch die Auswahl der Spalten ergibt sich eine Projektion.

Tabelle

Hinter dem Schlüsselwort FROM werden die Tabellen angegeben, aus denen die Spalten selektiert werden. Mehrere Tabellen werden durch Kommata getrennt. Sind die Spaltennamen nicht eindeutig, werden ihnen die Tabellennamen durch einen Punkt getrennt vorangestellt.

Selektion

Sollen nicht alle Einträge der Tabelle gewählt werden, wird hinter dem Schlüsselwort WHERE eine Bedingung angegeben.

SQL stellt auch Stringfunktionen und Datumsfunktionen zur Verfügung.

Aggregatfunktionen

Sortierung

Mit dem Schlüsselwort ORDER BY werden die Daten sortiert angefordert. Dazu wird ein oder mehrere Spaltennamen angegeben. Als zusätzliches Attribut kann ASC für aufsteigend oder DESC für absteigend angegeben werden.

Gruppierung

Daten können gruppiert werden, in dem nach dem Schlüsselwort GROUP BY die Spalte angegeben wird, die den Wert enthält, nachdem gruppiert werden soll. Zeilen, die in dieser Spalte den gleichen Wert haben, werden gruppert.

Sollen innerhalb der Gruppen selektiert werden, wird HAVING statt WHERE verwendet.

Mit dem Schlüsselwort LIMIT kann die Größe der Gruppe begrenzt werden.