Sortowanie i grupowanie w QUERY
Porządkowanie wyników i agregowanie ich za pomocą ORDER BY i GROUP BY
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ć remisyGROUP BYw połączeniu zSUM,COUNTlubAVGtworzy podsumowania dla poszczególnych kategorii- Wybrane kolumny nieobjęte agregacją muszą znajdować się w
GROUP BY LABELzmienia 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)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
- Wykonywanie zapytań na danych za pomocą QUERY
- Sortowanie i grupowanie w QUERY
- Stosowanie formuł do kolumn za pomocą ARRAYFORMULA
- Pobieranie danych za pomocą IMPORTRANGE