JOINs - Tabellen verknüpfen

lock
Bevorstehend

Kombinieren Sie Daten aus mehreren Tabellen

Ziele dieses Moduls
  • Sie können mit JOINs Daten aus mehreren Tabellen kombinieren
    Anwenden

JOINs sind das Herzstück relationaler Datenbanken. Lernen Sie, wie Sie Daten aus mehreren Tabellen kombinieren.

Was sind JOINs?

JOINs verknüpfen Tabellen über gemeinsame Felder (meist Fremdschlüssel).

-- INNER JOIN: Nur Zeilen mit Übereinstimmung
SELECT bestellungen.id, kunden.vorname, kunden.nachname, bestellungen.gesamtbetrag
FROM bestellungen
INNER JOIN kunden ON bestellungen.kunde_id = kunden.id;

-- LEFT JOIN: Alle Kunden, auch ohne Bestellungen
SELECT kunden.vorname, COUNT(bestellungen.id) as anzahl_bestellungen
FROM kunden
LEFT JOIN bestellungen ON kunden.id = bestellungen.kunde_id
GROUP BY kunden.id;

🚀 Jetzt üben!

Testen Sie die SQL-Befehle direkt im interaktiven Playground:

➡️ SQL Playground öffnen (Shop-DB)

💡 Praktisches Beispiel: Self-Join

Szenario: Zeigen Sie alle Kategorien mit ihrer übergeordneten Kategorie (z.B. 'Kopfhörer' gehört zu 'Audio').

SELECT 
  child.name AS unterkategorie,
  parent.name AS hauptkategorie
FROM kategorien child
LEFT JOIN kategorien parent 
  ON child.parent_kategorie_id = parent.kategorie_id
WHERE child.parent_kategorie_id IS NOT NULL
ORDER BY parent.name, child.name;

Erklärung:

  • Self-Join: Tabelle joined sich selbst!
  • child und parent sind Aliases (Aliasnamen)
  • LEFT JOIN zeigt auch Kategorien ohne Parent
  • Perfekt für hierarchische Daten (Baum-Strukturen)

Challenge

🎯 Übungsaufgaben

Testen Sie Ihr Wissen im SQL Playground:

  1. Einfacher JOIN: Zeigen Sie alle Produkte mit ihrem Kategorie-Namen (Tipp: produkte JOIN kategorien).
  2. Bestellungen mit Kunden: Listen Sie alle Bestellungen mit Kundenname und Bestelldatum auf.
  3. Hierarchie: Finden Sie alle Unterkategorien von 'Elektronik' (Self-Join auf kategorien!).
  4. Challenge: Zeigen Sie alle Produkte mit ihrer Hauptkategorie UND Unterkategorie (3-Level-Hierarchie mit 2 Self-Joins).

E-Commerce-Datenbank mit mehreren Tabellen

Checklist

0/3