Robbery von Gofficon, Noun Project – Lizenz: CC BY 3.0Wir arbeiten mit realen Daten aus unterschiedlichen Bereichen. Das macht die Übungen praxisnah: Wir beantworten echte Fragen, erkennen Trends und leiten Kennzahlen ab. Die drei Datensätze sind aus unterschiedlichen Sparten:
zh_einbrueche, Tabelle: einbruechespacemission, Tabelle: missionsyoutube_top_100_songs_2025, Tabelle: youtube_top_100_songs_2025
Was steckt drin? (Auszug Felder)
| Feld | Bedeutung |
|---|---|
ausgangsjahr | Berichtsjahr |
gemeindename / stadtkreis_name | örtliche Zuordnung |
straftaten_total | Vollendet + Versucht |
straftaten_vollendet, straftaten_versucht | Aufschlüsselung |
einwohner | Bevölkerungszahl (Ende Vorjahr) |
haeufigkeitszahl | Fälle pro 1’000 Einwohner |
Beispielfragen:
Was steckt drin? (Auszug Felder)
| Feld | Bedeutung |
|---|---|
company | Betreiber/Organisation (staatlich, militärisch, privat) |
location | Startplatz (Kosmodrom, Spaceport, Pad) |
launch_date | Datum/Zeit des Starts |
rocket / status_rocket | Träger & Status (aktiv/retired) |
mission_status | Erfolg/Fehlschlag u. a. |
price_usd | Missionskosten (falls vorhanden; Mio. USD) |
Beispielfragen:
Was steckt drin? (Auszug Felder)
| Feld | Bedeutung |
|---|---|
title / full_title | Videotitel (offiziell) |
channel | Künstler:in/Kanal |
view_count | Views (bis > 2 Mrd.) |
duration | Videolänge (ca. 2–6 Minuten) |
tags / description | Metadaten (Genre, Labels, Promo) |
category | Kategorie (meist Music) |
Beispielfragen:
Laden Sie die vorbereiteten Datensätze herunter und importieren Sie sie:
Screencast, der zeigt wie die SQL-Files in Webstorm ausgeführt werden. Drei Datenbanken mit Tabellen und Datensätzen werden in MySQL erstellt.
Schema wählen (wichtig):
Entweder im Editor-Dropdown das Schema wählen oder mit USE explizit setzen:
-- Beispiele: USE spacemission; -- USE zh_einbrueche; -- USE youtube_top_100_songs_2025;
| Funktion | Zweck | NULL-Verhalten |
|---|---|---|
COUNT(*) | Anzahl Zeilen | zählt alle Zeilen |
COUNT(spalte) | Anzahl nicht NULL | ignoriert NULL |
SUM(spalte) | Summe | ignoriert NULL |
AVG(spalte) | Durchschnitt | ignoriert NULL |
MIN(spalte) | Kleinster Wert | ignoriert NULL |
MAX(spalte) | Grösster Wert | ignoriert NULL |
Syntax (allgemein)
SELECT AGGREGATFUNKTION(ausdruck) AS alias FROM schema.tabelle;
Frage: Wie viele Missionen befinden sich im Datensatz?
SELECT COUNT(*) AS anzahl_missionen FROM missions;
Was passiert? COUNT(*) zählt alle Zeilen.
Frage: Wie viele Views haben alle 100 YouTube-Songs zusammen?
SELECT SUM(view_count) AS views_total FROM youtube_top_100_songs_2025;
Was passiert? SUM(view_count) addiert alle Views über die Tabelle.
Ergebnis: 2025 haben die 100 meistgeklickten YouTube-Songs insgesamt über 10 Milliarden Views erzielt.
Frage: Wie lang ist ein Song im Durchschnitt?
SELECT AVG(duration) AS avg_duration FROM youtube_top_100_songs_2025;
Was passiert? AVG(duration) berechnet den Mittelwert; NULLs werden ignoriert.
Ergebnis: 2025 haben die 100 meistgeklickten YouTube-Songs eine durchschnittliche Song-Dauer von 3 min 24s.
Fragen: Längster Song? Kürzester Song?
-- Längster Song SELECT MAX(duration) AS max_duration FROM youtube_top_100_songs_2025; -- Kürzester Song SELECT MIN(duration) AS min_duration FROM youtube_top_100_songs_2025;
Was passiert? MAX(…) gibt den grössten, MIN(…) den kleinsten Wert zurück.
Ergebnis: Der längste Song in der Tabelle ist „Kendrick Lamar - Not Like Us“ mit einer Dauer von 5 min 54s und der kürzeste Song „Claudia Valentina - Candy (Official Video)“ mit 2 Minuten.
Robbery von Gofficon, Noun Project – Lizenz: CC BY 3.0Space von Zahirulizul, Noun Project – Lizenz: CC BY 3.0Song von Puspa Kusuma, Noun Project – Lizenz: CC BY 3.0