| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
| modul:m290_guko:learningunits:lu10:theorie:a_einfuehrung [2025/11/09 17:09] – gkoch | modul:m290_guko:learningunits:lu10:theorie:a_einfuehrung [2025/11/10 08:46] (aktuell) – gkoch |
|---|
| ====== LU10a: Aggregatfunktionen Einführung ====== | ====== LU10a: Aggregatfunktionen Einführung ====== |
| |
| **Datensätze:** | ===== 0. Datensätze ===== |
| * **Einbrüche** (Kanton Zürich) – Schema: ''zh_einbrueche'', Tabelle: ''einbrueche'' | Wir arbeiten mit **realen Daten** aus unterschiedlichen Bereichen. Das macht die Übungen **praxisnah**: Wir beantworten echte Fragen, erkennen **Trends** und leiten **Kennzahlen** ab. |
| * **Space Missions** – Schema: ''spacemission'', Tabelle: ''missions'' | Die drei Datensätze sind aus unterschiedlichen Sparten: |
| * **YouTube Top 100 (2025)** – Schema: ''youtube_top_100_songs_2025'', Tabelle: ''youtube_top_100_songs_2025'' | * **Einbrüche** (Kanton Zürich) – Datenbank: ''zh_einbrueche'', Tabelle: ''einbrueche'' |
| | * **Raumfahrt (1957–2022)** – Datenbank: ''spacemission'', Tabelle: ''missions'' |
| | * **Musiktrends (YouTube Top Songs 2025)** – Datenbank: ''youtube_top_100_songs_2025'', Tabelle: ''youtube_top_100_songs_2025'' |
| |
| <WRAP info center round 70%> | |
| **Setup (Download & Import)** | === Einbrüche (Kanton Zürich) === |
| Laden Sie die vorbereiteten Datensätze herunter und importieren Sie sie: | |
| • {{ :modul:m290_guko:learningunits:lu10:theorie:Datensaetze_LU10_spacemissions_einbrueche_youtube_top_100.zip | ZIP mit allen drei SQL-Dumps }} | <WRAP center> |
| **Schemas im Editor sichtbar machen:** ''spacemission'', ''zh_einbrueche'', ''youtube_top_100_songs_2025''. | {{:modul:m290_guko:learningunits:lu10:theorie:noun-robbery-6965605.svg?100&nolink|Robbery-Icon – Gofficon (Noun Project)}} |
| </WRAP> | </WRAP> |
| | ((Bildquelle: ''Robbery'' von Gofficon, [[https://thenounproject.com/browse/icons/term/robbery/|Noun Project]] – Lizenz: CC BY 3.0)) |
| | |
| | |
| | * **Zeitraum:** 2009–2024 |
| | * **Quelle:** Kantonspolizei ZH |
| | * **Lizenz:** CC0 |
| | * **Granularität:** je **Gemeinde** (Stadt Zürich zusätzlich je **Stadtkreis**) |
| | |
| | <WRAP box center round 80%> |
| | **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** | |
| | </WRAP> |
| | |
| | **Beispielfragen:** |
| | * Wie viele Einbrüche gab es **letztes Jahr** in **meiner Gemeinde**? |
| | * Welche Gemeinden haben im **Durchschnitt** die **höchsten Raten**? |
| | |
| | === Space Missions === |
| | |
| | <WRAP center> |
| | {{:modul:m290_guko:learningunits:lu10:theorie:noun-space-7278594.svg?100&nolink|Space-Icon – Zahirulizul (Noun Project)}} |
| | </WRAP> |
| | ((Bildquelle: ''Space'' von Zahirulizul, [[https://thenounproject.com/browse/icons/term/space/|Noun Project]] – Lizenz: CC BY 3.0)) |
| | |
| | |
| | * **Zeitraum:** 1957–2022 |
| | * **Quelle:** Scrape von nextspaceflight.com |
| | * **Granularität:** **Start-Ereignis** (Mission) |
| | |
| | <WRAP box center round 80%> |
| | **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) | |
| | </WRAP> |
| | |
| | **Beispielfragen:** |
| | * Wie viele Starts hat **SpaceX** im Vergleich zu **staatlichen Akteuren** bis **2022**? |
| | * Welche **Jahre** waren **startstark**, welche **pannenanfällig**? |
| | * Welche **aktiven Raketen** haben die **meisten erfolgreichen** Starts? |
| | |
| | === YouTube Top 100 (2025) === |
| | <WRAP center> |
| | {{:modul:m290_guko:learningunits:lu10:theorie:noun-song-8043534.svg?100&nolink|Song-Icon – Puspa Kusuma (Noun Project)}} |
| | </WRAP> |
| | ((Bildquelle: ''Song'' von Puspa Kusuma, [[https://thenounproject.com/browse/icons/term/song/|Noun Project]] – Lizenz: CC BY 3.0)) |
| | |
| | |
| | * **Stichtag:** 22.09.2025 |
| | * **Umfang:** 100 Songs |
| | * **Granularität:** **Video/Track** inkl. Kanal-Metadaten |
| | |
| | <WRAP box center round 80%> |
| | **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**) | |
| | </WRAP> |
| | |
| | **Beispielfragen:** |
| | * Welche sind die **meistgespielten Songs 2025** und welche **Channels** sind **besonders erfolgreich**? |
| | * Gibt es einen **Zusammenhang** zwischen **Songdauer** und **Anzahl Views**? |
| | |
| | ==== Setup (Download & Import) ==== |
| | |
| | Laden Sie die vorbereiteten Datensätze herunter und importieren Sie sie: |
| | |
| | {{ :modul:m290_guko:learningunits:lu10:theorie:datensaetze_lu10_spacemissions_einbrueche_youtube_top_100.zip | ZIP mit allen drei SQL-Dumps }} |
| | |
| |
| {{ :modul:m290_guko:learningunits:lu10:theorie:load_and_import_sql_files_aggregate.mp4?1040x585 | Screencast, der zeigt wie die SQL-Files in Webstorm ausgeführt werden. Drei Datenbanken mit Tabellen und Datensätzen werden in MySQL erstellt. }} | {{ :modul:m290_guko:learningunits:lu10:theorie:load_and_import_sql_files_aggregate.mp4?1040x585 | Screencast, der zeigt wie die SQL-Files in Webstorm ausgeführt werden. Drei Datenbanken mit Tabellen und Datensätzen werden in MySQL erstellt. }} |
| //Screencast, der zeigt wie die SQL-Files in Webstorm ausgeführt werden. Drei Datenbanken mit Tabellen und Datensätzen werden in MySQL erstellt.// | //Screencast, der zeigt wie die SQL-Files in Webstorm ausgeführt werden. Drei Datenbanken mit Tabellen und Datensätzen werden in MySQL erstellt.// |
| |
| |
| |
| </code> | </code> |
| **Was passiert?** ''COUNT(*)'' zählt alle Zeilen. | **Was passiert?** ''COUNT(*)'' zählt alle Zeilen. |
| {{:modul:m290_guko:learningunits:lu10:theorie:anzahlmissionen.png?nolink&300|}} | \\ |
| | <WRAP center> |
| | {{:modul:m290_guko:learningunits:lu10:theorie:anzahlmissionen.png?300&nolink}} |
| | </WRAP> |
| </WRAP> | </WRAP> |
| |
| </code> | </code> |
| **Was passiert?** ''SUM(view_count)'' addiert alle Views über die Tabelle. | **Was passiert?** ''SUM(view_count)'' addiert alle Views über die Tabelle. |
| {{:modul:m290_guko:learningunits:lu10:theorie:total_views.png?nolink&300|}} | \\ |
| | <WRAP center> |
| | {{:modul:m290_guko:learningunits:lu10:theorie:total_views.png?300&nolink}} |
| //Ergebnis: 2025 haben die 100 meistgeklickten YouTube-Songs insgesamt über 10 Milliarden Views erzielt.// | //Ergebnis: 2025 haben die 100 meistgeklickten YouTube-Songs insgesamt über 10 Milliarden Views erzielt.// |
| | </WRAP> |
| </WRAP> | </WRAP> |
| |
| </code> | </code> |
| **Was passiert?** ''AVG(duration)'' berechnet den Mittelwert; NULLs werden ignoriert. | **Was passiert?** ''AVG(duration)'' berechnet den Mittelwert; NULLs werden ignoriert. |
| {{:modul:m290_guko:learningunits:lu10:theorie:avg_duration.png?nolink&300|}} | \\ |
| | <WRAP center> |
| | {{:modul:m290_guko:learningunits:lu10:theorie:avg_duration.png?300&nolink}} |
| //Ergebnis: 2025 haben die 100 meistgeklickten YouTube-Songs eine durchschnittliche Song-Dauer von 3 min 24s.// | //Ergebnis: 2025 haben die 100 meistgeklickten YouTube-Songs eine durchschnittliche Song-Dauer von 3 min 24s.// |
| | </WRAP> |
| </WRAP> | </WRAP> |
| |
| === 2.4 MIN / MAX – Kleinster / Grösster Wert === | === 2.4 MIN / MAX – Kleinster / Grösster Wert === |
| | |
| <WRAP round 80% box center> | <WRAP round 80% box center> |
| **Fragen:** Längster Song? Kürzester Song? | **Fragen:** Längster Song? Kürzester Song? |
| FROM youtube_top_100_songs_2025; | FROM youtube_top_100_songs_2025; |
| </code> | </code> |
| | |
| **Was passiert?** ''MAX(...)'' gibt den grössten, ''MIN(...)'' den kleinsten Wert zurück. | **Was passiert?** ''MAX(...)'' gibt den grössten, ''MIN(...)'' den kleinsten Wert zurück. |
| | \\ |
| | <WRAP center> |
| | {{:modul:m290_guko:learningunits:lu10:theorie:max_duration.png?300&nolink}} {{:modul:m290_guko:learningunits:lu10:theorie:min_duration.png?300&nolink}} |
| |
| {{:modul:m290_guko:learningunits:lu10:theorie:max_duration.png?nolink&300|}} {{:modul:m290_guko:learningunits:lu10:theorie:min_duration.png?nolink&300|}} | //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.// |
| | </WRAP> |
| //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. | |
| </WRAP> | </WRAP> |