Excel Formulas Academy · Lekcja

Sortowanie i grupowanie w QUERY

Porządkowanie wyników i agregowanie ich za pomocą ORDER BY i GROUP BY

Lekcja 2 z 413 kroki

Sortowanie i grupowanie w QUERY to bezpłatna lekcja Excel Formulas Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Excel Formulas Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Excel Formulas Academy zawiera 4 lekcji w sumie.

Coś więcej niż filtrowanie

Filtrowanie pokazuje właściwe wiersze, ale rzeczywiste raporty wymagają także kolejności i sum. QUERY obsługuje oba te elementy za pomocą dwóch kolejnych klauzul w stylu SQL: ORDER BY i GROUP BY.

Dzięki nim można odpowiedzieć na pytania takie jak który region sprzedaje najwięcej albo wypisać transakcje od największej do najmniejszej, korzystając z jednej formuły.

Sortowanie za pomocą ORDER BY

Klauzula ORDER BY sortuje wyniki według jednej lub kilku kolumn. Umieszcza się ją za klauzulą WHERE, jeśli ta występuje.

Domyślnie sortowanie odbywa się rosnąco (od najmniejszej wartości, od A do Z). Ta formuła wyświetla wszystkie wiersze posortowane według sprzedaży od najniższej do najwyższej.

=QUERY(A1:D7, "SELECT A, B, D ORDER BY D", 1)

Sortowanie malejąco

Dodaj DESC za nazwą kolumny, aby sortować od najwyższej wartości do najniższej. Użyj ASC, aby jawnie określić sortowanie rosnące.

Największe wartości sprzedaży pojawią się wtedy jako pierwsze, co doskonale sprawdza się na liście najlepszych wyników. Połącz tę klauzulę z LIMIT, aby uzyskać przejrzystą listę top 3.

=QUERY(A1:D7, "SELECT B, D ORDER BY D DESC LIMIT 3", 1)

Sortowanie według wielu kolumn

Wypisz w ORDER BY kilka kolumn, oddzielając je przecinkami, aby rozstrzygać remisy. Sheets sortuje najpierw według pierwszej kolumny, a następnie używa kolejnej do uporządkowania pasujących wierszy.

W tym przypadku wyniki są uporządkowane według regionu alfabetycznie, a w każdym regionie najwyższa sprzedaż znajduje się na początku.

=QUERY(A1:D7, "SELECT A, B, D ORDER BY A ASC, D DESC", 1)

Wprowadzenie do GROUP BY

GROUP BY scala wiersze, które mają wspólną wartość, w jeden wiersz podsumowania. To sposób na tworzenie sum dla każdej kategorii.

Aby go użyć, instrukcja SELECT musi łączyć kolumnę grupowania z funkcją agregującą, taką jak SUM, COUNT lub AVG, zastosowaną do innej kolumny.

Sumowanie w grupach

Ta formuła sumuje sprzedaż dla każdego regionu. SUM(D) dodaje kolumnę Sales, a GROUP BY A tworzy jeden wiersz dla każdego regionu.

Wynik przypomina małą tabelę przestawną: East z własną sumą i West z własną sumą, a wszystko pochodzi z jednej funkcji.

=QUERY(A1:D7, "SELECT A, SUM(D) GROUP BY A", 1)

Zliczanie w grupach

Zastąp funkcję COUNT, aby zliczać wiersze zamiast je sumować. Dzięki temu dowiesz się, ile transakcji zamknął każdy region.

Możesz użyć COUNT(D), aby zliczyć niepuste komórki sprzedaży i szybko określić liczbę wierszy w każdej grupie.

=QUERY(A1:D7, "SELECT A, COUNT(D) GROUP BY A", 1)

Obliczanie średniej w grupach

Użyj AVG, aby obliczyć średnią wartość w każdej grupie. W tym przypadku uzyskujemy średnią wielkość transakcji dla każdego regionu.

Można nawet łączyć agregaty: wybierz w tym samym zapytaniu zarówno SUM(D), jak i AVG(D), aby wyświetlić obok siebie sumę i średnią.

=QUERY(A1:D7, "SELECT A, SUM(D), AVG(D) GROUP BY A", 1)

Każda wartość nieagregowana musi być pogrupowana

Częsty błąd polega na tym, że każda kolumna w SELECT, która nie jest objęta agregacją, musi występować w GROUP BY.

SELECT A, B, SUM(D) GROUP BY A kończy się błędem, ponieważ kolumna B nie jest ani agregowana, ani grupowana. Należy pogrupować dane według obu kolumn albo usunąć B z listy wybieranych kolumn.

=QUERY(A1:D7, "SELECT A, B, SUM(D) GROUP BY A, B", 1)

Sortowanie pogrupowanego wyniku

Połącz klauzule, aby utworzyć ranking podsumowania. Po pogrupowaniu posortuj wyniki według agregatu, aby umieścić największą grupę na górze.

Ta formuła wyświetla każdy region wraz z jego łączną sprzedażą, od najwyższej sumy do najniższej, tworząc gotową tabelę rankingową.

=QUERY(A1:D7, "SELECT A, SUM(D) GROUP BY A ORDER BY SUM(D) DESC", 1)

Nadawanie etykiet kolumnom agregowanym

Kolumny wynikowe grupowania otrzymują nieczytelne nagłówki, takie jak sum Sales. Dodaj klauzulę LABEL, aby zmienić ich nazwy i uzyskać dopracowany raport.

W ten sposób nazwa kolumny z sumą zostaje zmieniona na Łączna sprzedaż. Tekst etykiety używa pojedynczych cudzysłowów, podobnie jak wartości filtrów.

=QUERY(A1:D7, "SELECT A, SUM(D) GROUP BY A LABEL SUM(D) 'Total Sales'", 1)

Szybki test

Sprawdź swoją znajomość sortowania i grupowania.

Podsumowanie

Możesz już kształtować wyniki QUERY:

  • ORDER BY col [ASC|DESC] sortuje wyniki, a dodatkowe kolumny pomagają rozstrzygać remisy
  • GROUP BY w połączeniu z SUM, COUNT lub AVG tworzy podsumowania dla poszczególnych kategorii
  • Wybrane kolumny nieobjęte agregacją muszą znajdować się w GROUP BY
  • LABEL zmienia nazwy nagłówków agregatów

Jedna formuła tworzy teraz posortowany, pogrupowany i opisany raport.

=QUERY(A1:D7, "SELECT A, SUM(D) GROUP BY A ORDER BY SUM(D) DESC LABEL SUM(D) 'Total Sales'", 1)
Bezpłatny start

Ucz się Excel dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Sortowanie i grupowanie w QUERY” jest bezpłatna?

Tak — pełny tekst „Sortowanie i grupowanie w QUERY” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Excel Formulas Academy, przejdź na CoddyKit PRO. Kurs Excel Formulas Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Sortowanie i grupowanie w QUERY”?

Porządkowanie wyników i agregowanie ich za pomocą ORDER BY i GROUP BY Ćwiczysz Excel Formulas Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Excel Formulas Academy?

Nie wymagamy żadnego doświadczenia. Excel Formulas Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Sortowanie i grupowanie w QUERY”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Excel Formulas Academy?

Tak. Każda lekcja Excel Formulas Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Wykonywanie zapytań na danych za pomocą QUERY
  2. Sortowanie i grupowanie w QUERY
  3. Stosowanie formuł do kolumn za pomocą ARRAYFORMULA
  4. Pobieranie danych za pomocą IMPORTRANGE
← Powrót do Excel Formulas Academy