Direkt zum Hauptinhalt springen
eLearner.app
Modul 1 · Lektion 3 von 43/57 im Kurs~10 min
Lektionen des Moduls (3/4)

Filtern mit WHERE

Oftmals benötigen wir nicht alle Zeilen einer Tabelle, sondern nur die eine bestimmte Bedingung erfüllen. Die WHERE-Klausel filtert Zeilen basierend auf a Boolescher Ausdruck:

SQL
SELECT <colonne>
FROM   <tabella>
WHERE  <condizione>;

Die Engine wertet die Bedingung zeilenweise aus und behält nur diese bei für den es TRUE zurückgibt.

Vergleichsoperatoren

Die häufigsten sind:

  • = gleich, <> (oder !=) ungleich
  • <, <=, >, >=
  • BETWEEN a AND b – geschlossenes Intervall (a und b enthalten)
  • IN (v1, v2, …) – Mitgliedschaft in einer Liste
  • LIKE 'patt%' – Textabgleich mit Platzhalter %

Textwerte werden in einfache Anführungszeichen eingeschlossen: 'Milano'.

Bedingungen kombinieren

Sie können mehrere Bedingungen mit AND, OR kombinieren und mit negieren NOT. Verwenden Sie beim Mischen der Klarheit halber Klammern:

SQL
WHERE department_id = 1
  AND (salary > 40000 OR hired_on < '2020-01-01');

Probieren Sie es aus

Übung#sql.m1.l3.e1
Versuche: 0Wird geladen…

Extrahieren Sie den Vornamen (first_name), den Nachnamen (last_name) und das Gehalt (salary) der Mitarbeiter, deren Gehalt unbedingt über 40.000 liegt.

Editor wird geladen…
Hinweis anzeigen

Die Bedingung, die Sie benötigen, ist ein Gehalt > 40.000. Zahlen erfordern keine Anführungszeichen.

Lösung nach 3 Versuchen verfügbar

Wiederholungsübung

Übung#sql.m1.l3.e2
Versuche: 0Wird geladen…

Extrahieren Sie den Vornamen (first_name) und den Nachnamen (last_name) der Mitarbeiter, deren Nachname mit dem Buchstaben „R“ beginnt. Verwenden Sie LIKE mit dem Platzhalter %.

Editor wird geladen…
Hinweis anzeigen

Das Muster „R%“ bedeutet: Zeichenfolgen, die mit R beginnen, gefolgt von irgendetwas.

Lösung nach 3 Versuchen verfügbar