Zurück zur Hauptseite
Impressum
< SQL Spaltenauswahl Inhalt SQL sortieren >

SQL Datensätze filtern mit WHERE

Wie man im Select mit Where die Datensätze auswählt:


SQL-Abfragen einschränken

Nach dem Select und From Teil einer SQL-Anfrage kann man ein WHERE anhängen.
Dem WHERE folgt eine Bedingung, welche festlegt, welche Datensätze ins Ergebnis der Abfrage kommen.
Die Bedingung im WHERE-Teil kann Spalten und Konstanten vergleichen:
Das Lied mit ID 0 finden:
SELECT name
FROM lied
WHERE id=0;
Eine Band ohne Stilrichtung finden:
SELECT  name
FROM interpret
WHERE stilrichtung IS NULL;
Lieder mit einer ID kleiner oder gleich 10:
SELECT  name
FROM lied
WHERE id<=10;
Bedingungen können mit AND und OR verbunden werden.
Bei AND müssen beide Bedingugen erfüllt sein,
bei OR mindestens eine.
Das Lied mit den IDs 0, 3, 7 finden:
SELECT name
FROM lied
WHERE id=0 OR id=3 OR id=7;
Alle Interpreten, die Rock oder Pop spielen:
SELECT *
FROM interpret
WHERE stilrichtung='Rock' or 
      stilrichtung='Pop';
Lieder mit einer ID von 3 bis 5:
SELECT  name
FROM lied
WHERE id>=3 AND id<=5;
Konstante Zahlen können einfach als Zahl angegeben werden.
Konstante Strings (Text) muss in einfache Anführungszeichen gesetzt werden.

Wildcards

Vergleicht man eine Spalte mit einem String, so kann dies auch mit LIKE erfolgen.
Bei einem Vergleich mit LIKE können Wildcards (Platzhalter) verwendet werden:
% steht für beliebig viele Zeichen
_ steht für genau ein Zeichen
Das Lied mit den A beginnen:
SELECT name
FROM lied
WHERE name LIKE 'A%';
Alle Interpreten, deren Stilrichtung 3 Buchstaben hat:
SELECT *
FROM interpret
WHERE stilrichtung LIKE '_ _ _';
Lieder die ein a und ein b enthalten:
SELECT *
FROM lied
WHERE name LIKE '%a%b%' OR
      name LIKE '%b%a%';

Aufgaben

Das Tool zum Überprüfen der Lösungen könnt ihr herunterladen.
Aufgabe 1
Gegeben ist eine CD-Datenbank mit folgenden Tabellen:
CD( CDID, TITEL )
AUFCD( CDID LIEDID )
INTERPRET( ID, NAME, STILRICHTUNG )
VON( IntId LiedId )
LIED( ID, NAME )
  1. Geben Sie ein Select-Statement an, den Namen der CD mit ID 3 ausgibt.
  2. Ermitteln Sie alle Lied-Ids als Nummer der CD 6.
  3. Ermitteln Sie alle Interpreten mit dem Anfangsbuchstaben S oder danach aus.
  4. Finden Sie alle Interpreten, die mit B beginnen.
  5. Ermitteln Sie alle Interpreten mit dem Anfangsbuchstaben A aus, welche eine ID kleiner 15 haben.
  6. Geben Sie alle CDs aus, die eine 6 im Namen haben.
  7. Geben Sie alle Interpreten aus, die mit einem großen S beginnen und mit einem kleinen l enden.
  8. Geben Sie alle Interpreten aus, die keinen Rock spielen
  9. Geben Sie alle Interpreten aus, für welche keine Stilrichtung eingetragen wurde.
Aufgabe 2
Gegeben ist eine Datenbank-Tabelle (aus Datenbank klein):
BESTELLUNG(ID, DATUM, GESPREIS, MENGE, NAME )
Das Datum ist hier als Text hinterlegt, der Preis als Kommazahl, die Menge als ganze Zahl und der Name als Text.
  1. Geben Sie alle Datensätze der Tabelle aus.
  2. Geben Sie alle Datensätze mit einem Gesamtpreis über 500€ aus.
  3. Suchen Sie alle Bestellungen mit weniger als 3 Artikeln und einem Gesammtpreis unter 200€ heraus.
  4. Suchen Sie alle Bestellungen vom Oktober 2019.
  5. Listen Sie alle Bestellungen von Karp auf.
  6. Finden Sie die Bestellungen, welche 2 Artikel beinhalten und im Dezember von Rabin bestellt wurden.