MINT lernen

SQL: Daten abfragen

Eine Zeile Code statt stundenlangem Suchen: So fragst du eine Datenbank nach genau den Daten, die du brauchst.

1

Tabellen und Abfragen

  • Datenbank:speichert Daten in Tabellen; eine Zeile ist ein Datensatz, eine Spalte ein Attribut.
  • SQL:„Structured Query Language“, in den 1970er-Jahren bei IBM entwickelt; die Standardsprache für Datenbanken.
  • Deklarativ:du beschreibst, welche Daten du willst — wie sie gesucht werden, entscheidet die Datenbank.
  • SELECT … FROM:SELECT name, punkte FROM ag_mitglieder; wählt Spalten aus einer Tabelle.
  • SELECT *:der Stern wählt alle Spalten.
  • ORDER BY:sortiert das Ergebnis: ORDER BY punkte DESC absteigend, ASC aufsteigend.
2

Zeilen filtern und zählen

  • WHERE:filtert Zeilen mit einer Bedingung: =, <> (ungleich), <, >, <=, >=.
  • Text:steht in einfachen Anführungszeichen: WHERE ag = 'Schach'.
  • AND · OR:AND: beide Bedingungen müssen gelten; OR: mindestens eine.
  • Aggregatfunktion:COUNT(*) zählt Zeilen, AVG, MIN, MAX berechnen einen Wert aus einer Spalte.
  • Ergebnis:jede Abfrage liefert wieder eine Tabelle — manchmal mit nur einer Zeile und einer Spalte.

Lies die Abfrage und markiere in der Tabelle alle Zeilen, die im Ergebnis landen: Zeile anklicken oder mit Tab hinspringen und Enter drücken. Dann „Prüfen“. Oben wechselst du zwischen vier Abfragen.

Welche Zeilen liefert die Abfrage?

Halte fest: WHERE prüft jede Zeile einzeln: Nur Zeilen, für die die Bedingung wahr ist, kommen ins Ergebnis — AND verlangt beide Teile, OR nur einen.

Merke

SQL-Abfrage: SELECT Spalten FROM Tabelle WHERE Bedingung ORDER BY Spalte; — das Ergebnis ist wieder eine Tabelle.

3

Allgemeine Hinweise

Ein Gleichheitszeichen

SQL vergleicht mit einem einfachen =, nicht mit == wie Python oder Java. Ungleich schreibt man <>.

Text in Anführungszeichen

Ohne Anführungszeichen hält SQL Schach für einen Spaltennamen. Schreibe 'Schach' — Zahlen dagegen ohne.

Von innen nach außen lesen

Lies zuerst FROM (welche Tabelle?), dann WHERE (welche Zeilen?), dann SELECT (welche Spalten?) und zuletzt ORDER BY.

Videos