MINT lernen

Datenbanken im Abitur

Zwei Tabellen, eine Frage — und die Antwort steckt in der Zeile, die beide verbindet.

1

Schema und Schlüssel

  • Kurzschreibweise:Buch(Nr, Titel, Jahr, ↑VerlagID) — Primärschlüssel unterstrichen, Fremdschlüssel mit ↑.
  • Primärschlüssel:identifiziert jeden Datensatz eindeutig.
  • Fremdschlüssel:verweist auf den Primärschlüssel einer anderen Tabelle.
  • ER-Diagramm:Kardinalitäten an den Kanten: 1:n wird zum Fremdschlüssel auf der n-Seite, n:m zu einer eigenen Tabelle.
  • Anomalien:Redundanz führt zu Fehlern beim Einfügen, Ändern und Löschen — deshalb Daten auf Tabellen verteilen.
2

SQL-Abfragen lesen

  • Verbund:FROM Buch b, Verlag v WHERE b.VerlagID = v.ID — ohne die Verbundbedingung entstehen alle Kombinationen.
  • Filtern:WHERE wirkt auf einzelne Zeilen: =, !=, BETWEEN, IN, LIKE 'S%' (% beliebig viele, _ genau ein Zeichen).
  • Gruppieren:GROUP BY fasst Zeilen zusammen; HAVING filtert die Gruppen, z. B. HAVING COUNT(*) >= 2.
  • Sortieren:ORDER BY Jahr DESC, danach LIMIT 3 für die ersten drei.

Wähle eine Abfrage und markiere in der Tabelle Buch alle Zeilen, die zum Ergebnis beitragen (Klick oder Tab + Leertaste). Prüfe dann — das Ergebnis der Abfrage erscheint darunter.

Welche Zeilen zählen?


    
Buch
Verlag

Halte fest: Beim Verbund zählt eine Zeile nur, wenn sie über den Fremdschlüssel einen passenden Partner findet und alle übrigen Bedingungen erfüllt.

Merke

Verbund: FROM A, B WHERE A.Fremdschlüssel = B.Primärschlüssel

3

Allgemeine Hinweise

WHERE oder HAVING?

Bedingungen an einzelne Zeilen gehören in WHERE, Bedingungen an Aggregate wie COUNT(*) in HAVING.

Regel bei GROUP BY

Jede Spalte hinter SELECT steht entweder in einer Aggregatfunktion oder in der GROUP BY-Klausel.

Erst von Hand

Bei „Geben Sie das Ergebnis an“ die passenden Zeilen in der Tabelle markieren, dann die Ergebnistabelle mit Spaltenköpfen hinschreiben.

Videos