Aufgaben-Python/courses/sql/06_inner_und_outer_joins/test_aufgabe.sql

38 lines
1 KiB
SQL

-- 🧪 SQL TEST SUITE: MODUL 06 (INNER & OUTER JOINS)
-- Test 1: INNER JOIN Prüfung (Erwartet 4 feste Mitarbeiter)
SELECT
m.name AS mitarbeiter_name,
m.rolle,
a.name AS abteilung_name
FROM mitarbeiter m
INNER JOIN abteilungen a ON m.abteilung_id = a.id
ORDER BY m.id;
-- Test 2: LEFT JOIN Prüfung (Erwartet 5 Zeilen inkl. Dr. Aris Thorne)
SELECT
m.name AS mitarbeiter_name,
COALESCE(a.name, 'Keine Abteilung') AS abteilung_name
FROM mitarbeiter m
LEFT JOIN abteilungen a ON m.abteilung_id = a.id
ORDER BY m.id;
-- Test 3: Anti-Join Prüfung (Erwartet genau Abteilung 'Forschung & KI')
SELECT
a.id AS abteilung_id,
a.name AS abteilung_name
FROM abteilungen a
LEFT JOIN mitarbeiter m ON a.id = m.abteilung_id
WHERE m.id IS NULL
ORDER BY a.id;
-- Test 4: Multi-Table JOIN Prüfung über 3 Tabellen
SELECT
m.name AS mitarbeiter,
a.name AS abteilung,
s.stadt,
s.land
FROM mitarbeiter m
INNER JOIN abteilungen a ON m.abteilung_id = a.id
INNER JOIN standorte s ON a.standort_id = s.id
ORDER BY m.id;