Subqueries: Unterschied zwischen den Versionen
Aus FI-Wiki
Keine Bearbeitungszusammenfassung |
|||
| Zeile 14: | Zeile 14: | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ Text der Überschrift | |||
| ! | |- | ||
| - | ! Überschrift !! Überschrift !! Überschrift | ||
|- | |||
| Beispiel || Beispiel || Beispiel | |||
|- | |||
| | | Beispiel || Beispiel || Beispiel | ||
|- | |||
| - | | Beispiel || Beispiel || Beispiel | ||
| | |} | ||
| - | |||
| | |||
| } | |||
'''Tabelle: bestellung''' | '''Tabelle: bestellung''' | ||
Version vom 29. Oktober 2025, 10:49 Uhr
Subqueries in SQL
Subqueries (Unterabfragen) sind SQL-Abfragen, die innerhalb einer anderen Abfrage eingebettet sind. Sie liefern Zwischenergebnisse, die in der äußeren Abfrage verwendet werden.
Arten von Subqueries
- Skalare Subquery: Gibt genau einen Wert zurück
- Mehrzeilige Subquery: Gibt eine Liste von Werten zurück
- Korrelierte Subquery: Bezieht sich auf eine Tabelle der äußeren Abfrage
Beispieltabellen
Tabelle: kunde
| Überschrift | Überschrift | Überschrift |
|---|---|---|
| Beispiel | Beispiel | Beispiel |
| Beispiel | Beispiel | Beispiel |
| Beispiel | Beispiel | Beispiel |
Tabelle: bestellung
| | | | | | - | - | - | ------- | | | 1 | | 900.00 | | | | | | | | 2 | | 1500.00 | | | | | | | | 3 | | 500.00 | | | | | | | | 4 | | 2200.00 | | | | | | | | 2 | | 300.00 | | | | | |
1. Skalare SubquerySELECT name
FROM kunde
WHERE kundennr = (
SELECT kundennr
FROM bestellung
WHERE betrag = (SELECT MAX(betrag) FROM bestellung)
);
Ergebnis: name
------
David
Gibt den Namen des Kunden mit der höchsten Bestellung zurück. 2. Mehrzeilige Subquery mit INSELECT name
FROM kunde
WHERE kundennr IN (
SELECT kundennr
FROM bestellung
WHERE betrag > 1000
);
Ergebnis: name
------
Ben
David
Gibt alle Kunden zurück, die Bestellungen über 1000 haben. 3. Korrelierte SubquerySELECT name
FROM kunde k
WHERE EXISTS (
SELECT *
FROM bestellung b
WHERE b.kundennr = k.kundennr AND b.betrag > 1000
);
Ergebnis: name
------
Ben
David
Funktioniert zeilenweise: Gibt Kunden zurück, für die es mindestens eine große Bestellung gibt. Vergleich der Subquery-Arten
Fazit
|
