MINT lernen

Übungen: SELECT, FROM und WHERE

Zehn Übungen zu Spaltenauswahl, Bedingungen und Ergebnis-Tabellen.

Dein Fortschritt:
0 / 0 Aufgaben
1

Übungsaufgaben

Zehn Übungen zum Klicken, Ziehen und Knobeln — von AFB I bis AFB III. Jede Übung gibt dir sofort Rückmeldung; wenn du hängst, helfen dir die zwei gestuften Tipps.

A1
Was liefert die Abfrage?
AFB I

Gegeben ist die Tabelle Tier und die Abfrage SELECT Name FROM Tier WHERE Gehege = 'Savanne'; Gib alle Namen an, die im Ergebnis stehen.

Tabelle Tier
TierNrNameArtGehegeGewichtGeburtsjahr
1KiaraLöweSavanne1802016
2BongoZebraSavanne3202019
3FriedaPinguinKüste122021
4OlliPinguinKüste142018
5RasmusLöweSavanne2102012
6LunaLuchsWald222020
Mehrere Antworten sind richtig. Markiere alle zutreffenden und klicke dann auf „Prüfen“.
„Savanne“ ist ein Wert der Bedingung, er steht nicht im Ergebnis — ausgegeben wird nur die Spalte Name.
Frage: Welche Zeilen erfüllen die Bedingung?Warum? WHERE filtert Zeilen, SELECT wählt dann die Spalte.
Hilfe: Erst alle Zeilen mit Gehege = Savanne suchen, dann nur deren Namen ausgeben.
A2
Stimmt's? — SQL-Grundregeln
AFB I

Fünf Aussagen zu einfachen SQL-Abfragen. Ordne jede als richtig oder falsch ein.

5 Aussagen nacheinander. Eine falsche Einschätzung reicht — dann startest du die Serie mit „Neue Runde“ neu.
Aussage 1 von 5

Feste Reihenfolge, Hochkommas bei Text, Ergebnis immer eine Tabelle.
Frage: Was steht in Hochkommas?Warum? Zahlen und Texte werden verschieden geschrieben.
Hilfe: Texte in einfache Hochkommas, Zahlen ohne; Klauseln in fester Reihenfolge.
A3
Lückentext: Aufbau einer Abfrage
AFB I

Nenne die fehlenden SQL-Wörter — eines bleibt übrig.

Wort anklicken, dann Lücke anklicken (oder umgekehrt) — mit Tab und Enter geht es genauso. Ein Klick auf eine gefüllte Lücke legt das Wort zurück.

Hinter stehen die gewünschten Spalten, hinter die Tabelle. Mit werden Zeilen gefiltert. Doppelte Ergebniszeilen entfernt , und mit gibt man einer Ergebnisspalte einen neuen Namen.

ORDER gehört zum Sortieren (ORDER BY) — das kommt im nächsten Unterkapitel.
Frage: Welches Wort filtert Zeilen?Warum? Jede Klausel hat eine feste Aufgabe.
Hilfe: SELECT = Spalten, FROM = Tabelle, WHERE = Zeilen, DISTINCT = ohne Doppelte, AS = Umbenennen.
A4
Welche Tiere kommen ins Ergebnis?
AFB I

Abfrage: SELECT Name FROM Tier WHERE Gewicht < 100; Ordne jedes Tier aus der Tabelle oben zu.

Ziehe jede Karte in den passenden Korb — oder wähle sie mit Enter aus und drücke dann die Ziffer des Korbs (0 legt sie zurück).
1im Ergebnis
2nicht im Ergebnis
Nur die drei leichten Tiere (12, 14, 22 kg) erfüllen Gewicht < 100.
Frage: Welches Gewicht hat jedes Tier?Warum? Vergleiche jeden Wert mit 100.
Hilfe: Kleiner als 100: im Ergebnis; sonst nicht.
A5
Zeilen zählen
AFB I

Bestimme, wie viele Zeilen SELECT * FROM Tier WHERE Geburtsjahr >= 2019; für die Tabelle oben liefert.

Überlege selbst und trage das Ergebnis ein — Enter prüft direkt.
Bongo (2019), Frieda (2021), Luna (2020) — ≥ schließt 2019 mit ein.
Frage: Gehört 2019 dazu?Warum? >= heißt „größer oder gleich“.
Hilfe: Zähle alle Tiere mit Geburtsjahr 2019, 2020 oder 2021.
A6
Wie die Datenbank rechnet
AFB II

Beschreibe die Auswertung von SELECT Name, Gewicht FROM Tier WHERE Art = 'Pinguin';, indem du die Schritte ordnest.

Ziehe die Karten in die richtige Reihenfolge — mit der Tastatur: ↑/↓ verschiebt, Shift+↑/↓ wechselt nur den Fokus.
1Die Tabelle Tier wird geladen (FROM).
2Jede Zeile wird mit der Bedingung Art = Pinguin verglichen (WHERE).
3Nur Frieda und Olli bleiben übrig.
4Von diesen Zeilen werden die Spalten Name und Gewicht ausgewählt (SELECT).
5Die Ergebnistabelle mit 2 Zeilen und 2 Spalten wird ausgegeben.
Geschrieben wird SELECT zuerst, ausgewertet aber zuletzt — genau deshalb kann man im WHERE auch Spalten nutzen, die gar nicht ausgegeben werden.
Frage: Welche Klausel braucht die Datenbank zuerst?Warum? Ohne Tabelle gibt es nichts zu filtern.
Hilfe: Reihenfolge der Auswertung: FROM → WHERE → SELECT.
A7
Abfrage mit Rechnung
AFB II

Ein Futterplan rechnet mit SELECT Name, Gewicht * 0.05 AS Futter FROM Tier WHERE Gehege = 'Savanne'; (Futter in kg pro Tag). Wende die Abfrage auf die Tabelle oben an.

Löse die Kette Schritt für Schritt: Erst wenn ein Schritt stimmt, wird der nächste freigeschaltet. Enter prüft.
  1. Anzahl Ergebniszeilen Zeilen
  2. Futter für Kiara kg
  3. Futter für Bongo kg
  4. Futter für alle drei zusammen kg
Mit AS bekommt die berechnete Spalte einen lesbaren Namen. 180 · 0,05 = 9; 320 · 0,05 = 16; 210 · 0,05 = 10,5.
Frage: Welche Tiere leben in der Savanne?Warum? Erst filtern, dann rechnen.
Hilfe: Gewicht · 0,05 für Kiara, Bongo und Rasmus.
A8
Frage und Abfrage
AFB II

Erstelle zu jeder Frage die passende Abfrage, indem du beide verbindest.

Frage: Welches Stichwort steckt in der Frage?Warum? „gibt es“ deutet auf eine Liste ohne Doppelte.
Hilfe: „alle Angaben“ → *, „keine“ → !=, „vor 2018“ → < 2018.
A9
Fehler in Abfragen
AFB II

Sechs Abfragen aus einem Test — drei sind fehlerhaft. Überprüfe jede Zeile.

In diesem Text stecken Fehler. Klicke genau die falschen Zeilen an — die richtigen musst du stehen lassen.
Der häufigste Fehler ist der fehlende Hochkommas-Text. Zwei Bedingungen ohne AND/OR kommen im nächsten Unterkapitel dran.
Frage: Welche Syntaxregel ist verletzt?Warum? Prüfe Reihenfolge, Hochkommas und Verknüpfung.
Hilfe: SELECT – FROM – WHERE; Texte in Hochkommas; mehrere Bedingungen verbinden.
A10
Was ändert sich am Ergebnis?
AFB III

Ausgangsabfrage: SELECT Name FROM Tier WHERE Gewicht > 20; liefert 4 Zeilen. Schätze ab, wie viele Zeilen die Abfrage nach jeder einzelnen Änderung liefert.

Wähle für jede Zeile eine Stufe: 1 = 0–1 Zeilen, 2 = 2–3 Zeilen, 3 = 4 Zeilen, 4 = 5 Zeilen, 5 = 6 Zeilen. Mit der Tastatur: Tab zur Zeile, ←/→ zwischen den Stufen, Enter setzt.
1 = 0–1 Zeilen5 = 6 Zeilen
> 20 wird zu >= 20
> 20 wird zu > 300
SELECT Name wird zu SELECT *
> 20 wird zu > 10
SELECT Name wird zu SELECT DISTINCT Gehege
SELECT ändert nie die Zeilenzahl — außer DISTINCT fasst gleiche Zeilen zusammen. Kein Tier wiegt genau 20 kg, also bleibt >= 20 bei 4 Zeilen.
Frage: Ändert SELECT die Zeilen oder die Spalten?Warum? Nur WHERE und DISTINCT beeinflussen die Anzahl der Zeilen.
Hilfe: Prüfe bei Grenzänderungen, ob ein Wert genau auf der Grenze liegt.