Menu
Coddy logo textTech

Podzapytania — część 1

Część sekcji Podstawy ścieżki SQL w Coddy. Lekcja 38 z 72.

Podzapytania pozwalają nam połączyć wiele zapytań w jedno. Rozważmy na przykład następującą tabelę <strong>employees</strong>:

idwynagrodzenie
148
234
346
413
528

Potrzebujemy podzapytania, ponieważ nie możemy użyć bezpośrednio WHERE salary > AVG(salary), gdyż funkcji agregujących, takich jak AVG(), nie można używać w klauzuli WHERE — można ich używać dopiero po pogrupowaniu danych.

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

Podzapytanie pomaga nam znaleźć pracowników, którzy zarabiają więcej niż średnia pensja w firmie, najpierw obliczając średnią (zapytanie wewnętrzne), a następnie używając tej wartości do filtrowania pracowników (zapytanie zewnętrzne).

Ponieważ średnia wynosi: (48 + 34 + 46 + 13 + 28) / 5 = 33.8, oto wynik zapytania:

idwynagrodzenie
148
234
346
challenge icon

Wyzwanie

Łatwy

Dostępne tabele i kolumny:

  • shop: price, quantity, category, list_date

Napisz zapytanie, które znajdzie wszystkie przedmioty (wybierz wszystkie kolumny), których cena jest wyższa niż średnia cena wszystkich przedmiotów.

Użyj podzapytania w klauzuli WHERE, aby obliczyć średnią cenę, a następnie porównaj cenę każdego przedmiotu z tą średnią.

Spróbuj swoich sił

quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online SQL