Befehlsreferenz SQL: Unterschied zwischen den Versionen

Aus Informatik-Box
Zur Navigation springen Zur Suche springen
Zeile 93: Zeile 93:


==== Text ====
==== Text ====
; <code>UPPER</code>
; <code>UPPER(Text)</code>
: Text in Großbuchstaben
: Text in Großbuchstaben
; <code>LOWER</code>
; <code>LOWER(Text)</code>
: Text in Kleinuchstaben
: Text in Kleinuchstaben
; <code>LEFT(Text, Anzahl)</code>
: Ermittelt die ersten <code>Anzahl</code> Buchstaben.
; <code>RIGHT(Text, Anzahl)</code>
: Ermittelt die letzten <code>Anzahl</code> Buchstaben.


==== Zahl ====
==== Zahl ====

Version vom 11. März 2021, 09:11 Uhr

Um die SQL-Anfragen direkt auszuprobierne kannst Du die Seite SQL Fiddle benutzen. Klicke im linken Bereich unten auf "Browser", um dir das Schema der SQL-Tabellen anzeigen zu lassen. Au der rechten Seite kannst Du Deine Abfragen eingeben und mit "Run SQL" ausführen lassen.


SELECT Anweisungen

Mit der SELECT Anweisung können Datensätze aus einer Datenbank abgerufen werden.

SELECT * FROM personen

(Probier es aus.)

* bedeutet "Rufe alle Spalten ab", personen ist die Tabelle mit den Datensätzen. Um nur bestimmte Spalten abzurufen können diese statt * aufgelistet werden.

SELECT Gericht, Preis FROM speisen

(Probier es aus.)

Ergebnisse sortieren

Die Datensätze im Ergebnis können mit dem ORDER BY Befehl sortiert werden:

SELECT id, Name, Ort FROM personen ORDER BY Name

(Probier es aus.)

Das Egebnis ist aufsteigend nach den Werten in der Spalte Name sortiert. Die Sortierrichtung kann mit den Schlüsselwörtern ASC (ascending/aufsteigend) und DESC (descending/absteigend) festgelegt werden.

SELECT id, Name, Ort FROM personen ORDER BY Name DESC

(Probier es aus.)

Um nach meherern Spalten zu sortieren, können diese hintereinander angegeben werden. Um zuerst absteigend nach Abteilung und dann jede ABteilung aufsteigend nach Name zu sortieren, schreibt man:

SELECT id, Name, Abteilung FROM personen ORDER BY Abteilung DESC, Name ASC

(Probier es aus.)

Ergebnisse filtern

Ergebnisse einschränken

Wenn eine Abfrage zu viele Datensätze auf einmal ergibt, dann kann man mit dem LIMIT Befehl die Anzahl der Datensätze einschränken. Zum Beispiel die ersten fünf Datensätze:

SELECT * FROM personen ORDER BY Name LIMIT 5

(Probier es aus.)

Möchte man nicht die ersten fünf, sondern fünf Datensätze ab dem dritten Datensatz, dann können mit OFFSET die ersten Ergebniszeilen übersprungen werden:

SELECT * FROM personen ORDER BY Name LIMIT 5 OFFSET 3

(Probier es aus.)

Spalten umbenennen

Manchmal ist es hilfreich im Ergebnis den Spalten andere Namen zu geben. Das kannst Du mit AS machen. Die neuen Namen kannst Du dann auch in anderen Befehlen (zum Beispiel ORDER BY) verwenden.

SELECT Name AS Vorname,Tel AS Telefonnummer
    FROM personen
    ORDER BY Vorname

(Probier es aus.)

Funktionen nutzen

SQL hat eine ganze Reihe von Funktionen eingebaut, mit denen die Werte der Datensätze manipuliert werden können. Zum Beispiel ändert die UPPER Funktion einen Text in Großuchstaben um:

SELECT Name, UPPER(Name) FROM personen

(Probier es aus.)

Bei Funktionen ist es wichtig, auf den Typ der Werte zu achten. Die Funktion UPPER macht zum Beispiel nur bei Texten Sinn.

Hier ist eine Auswahl der Funktionen für verschiedene Typen:

Text

UPPER(Text)
Text in Großbuchstaben
LOWER(Text)
Text in Kleinuchstaben
LEFT(Text, Anzahl)
Ermittelt die ersten Anzahl Buchstaben.
RIGHT(Text, Anzahl)
Ermittelt die letzten Anzahl Buchstaben.

Zahl

Datum

Ergebnisse gruppieren

Aggregatsfunktionen nutzen

Tabellen verknüpfen

INSERT Anweisungen

UPDATE Anweisung

DELETE Anweisung

JOINs