Menu
Coddy logo textTech

Unterabfragen Teil 1

Teil des Abschnitts Grundlagen der SQL-Journey von Coddy. Lektion 38 von 72.

Unterabfragen ermöglichen es uns, mehrere Abfragen zu einer einzigen zu kombinieren. Betrachten Sie beispielsweise die folgende Tabelle <strong>employees</strong>:

idGehalt
148
234
346
413
528

Wir benötigen eine Unterabfrage, weil wir WHERE salary > AVG(salary) nicht direkt verwenden können, da Aggregatfunktionen wie AVG() nicht in einer WHERE-Klausel verwendet werden können – sie können nur verwendet werden, nachdem die Daten gruppiert wurden.

SELECT id, salary
FROM employees
WHERE salary > (
    SELECT AVG(salary)
    FROM employees
);

Eine Unterabfrage hilft uns, Mitarbeitende zu finden, die mehr als das durchschnittliche Gehalt des Unternehmens verdienen, indem sie zunächst den Durchschnitt berechnet (innere Abfrage) und diesen Wert anschließend verwendet, um Mitarbeitende zu filtern (äußere Abfrage).

Da der Durchschnitt (48 + 34 + 46 + 13 + 28) / 5 = 33.8 beträgt, ist dies das Ergebnis der Abfrage:

idGehalt
148
234
346
challenge icon

Aufgabe

Einfach

Verfügbare Tabellen und Spalten:

  • shop: price, quantity, category, list_date

Schreibe eine Abfrage, um alle Artikel (wähle alle Spalten aus) zu finden, deren Preis höher ist als der Durchschnittspreis aller Artikel.

Verwende eine Unterabfrage in der WHERE-Klausel, um den Durchschnittspreis zu berechnen, und vergleiche dann den Preis jedes Artikels mit diesem Durchschnitt.

Probier es selbst

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: SQL-Playground