Jak używać QUERY w Arkuszach Google: składnia i przykłady

Ostatnia aktualizacja: 30/10/2026

  • QUERY umożliwia filtrowanie, sortowanie i podsumowywanie danych bez modyfikowania oryginalnego zakresu.
  • Nagłówki i typy danych mają wpływ na wynik, szczególnie gdy brakuje wartości.
  • W tablicach łączonych używane są identyfikatory pozycyjne, które należy sprawdzić w przypadku zmiany struktury.
  • Zaleca się zdiagnozowanie błędów przed ich ukryciem, aby nie pomylić nieprawidłowej formuły z zapytaniem, dla którego nie ma wyników.
Jak korzystać z QUERY w Arkuszach Google

La Funkcja QUERY w Arkuszach Google Umożliwia wybieranie kolumn, filtrowanie rekordów, sortowanie wyników i obliczanie podsumowań za pomocą formuły. Jest to przydatne, gdy trzeba wygenerować raport oparty na danych z innej tabeli bez modyfikowania oryginalnej zawartości.

Twoje zapytanie wykorzystuje język Google Visualization o składni podobnej do SQL. Aby zacząć, nie musisz znać całego tego języka: możesz utworzyć proste zapytanie i w razie potrzeby dodać warunki lub grupowania.

Składnia zapytania QUERY w Arkuszach Google i pierwszy przykład

Składnia zapytania QUERY w Arkuszach Google

Struktura funkcji ma trzy argumenty:

=QUERY(datos; consulta; encabezados)
  • dane: zakres lub macierz, którą chcesz zapytać.
  • konsultacja: instrukcje w cudzysłowie lub odwołanie do komórki, która je zawiera.
  • nagłówki: Liczba początkowych wierszy w zakresie, które są nagłówkami. Użyj 1, jeśli istnieje wiersz nagłówka, i 0, jeśli go nie ma. Jeśli pominiesz tę wartość lub wpiszesz -1, Arkusze spróbują odgadnąć.

W poniższych przykładach użyjemy tabeli o następującej strukturze:

A: Data B: Klient C: Stan D: Kwota E: Kanał
01/10/2026 Anna Wypełniony 100 Sieć
02/10/2026 Luis Kolczyk 80 Sklep
03/10/2026 Anna Wypełniony 50 Sklep
04/10/2026 Kuna Wypełniony 200 Sieć
05/10/2026 Luis Odwołany 40 Sieć

Nagłówki znajdują się w wierszu 1, a pięć rekordów zajmuje wiersze od 2 do 6. Aby zwrócić całą tabelę, wpisz formułę w pustym obszarze, na przykład G1:

=QUERY(A1:E6;"select *";1)

W przykładach wykorzystano średnik między argumentamiJeśli w pliku są używane przecinki, dostosuj te separatory. Przecinki w tekście zapytania, np. select B, DNależy je zachować.

Ekskluzywna zawartość — kliknij tutaj  Jak zmienić DNS w systemie Windows 10

Wybierz kolumny, filtruj i sortuj wyniki

Szkło powiększające nad grafikami i dokumentami obok laptopa.

Klauzula wybierać Pozwala to na wybór kolumn. Aby wyświetlić tylko klienta i kwotę:

=QUERY(A1:E6;"select B, D";1)

Z Gdzie Możesz ograniczyć rekordy do zamówień zrealizowanych:

=QUERY(A1:E6;"select B, D where C = 'Completado'";1)

Przykład zwraca obie operacje Any i Marty. Dodawanie zamów według Można je sortować według kwoty malejącej:

=QUERY(A1:E6;"select B, D where C = 'Completado' order by D desc";1)

Można również łączyć warunki:

=QUERY(A1:E6;"select B, D where C = 'Completado' and D >= 100 order by D desc";1)

Ostatnie zapytanie zwraca Martę z wartością 200 i Anę z wartością 100. Liczby są porównywane bez cudzysłowów; wartości tekstowe są zapisywane w pojedynczych cudzysłowach wewnątrz zapytania.

Grupuj kwoty za pomocą GROUP BY i zmień nagłówki

Aby uzyskać całkowitą kwotę na klienta, połącz grupuj według z suma():

=QUERY(A1:E6;"select B, sum(D) group by B label sum(D) 'Importe total'";1)

Wynik pokazuje 150 dla Any, 120 dla Luisa i 200 dla Marty. W tym przypadku wszystkie stany są uwzględnione, ponieważ nie dodaliśmy filtra.

Jeśli chcesz dodać tylko zamówienia zrealizowane:

=QUERY(A1:E6;"select B, sum(D) where C = 'Completado' group by B order by sum(D) desc label sum(D) 'Ventas completadas'";1)

Możesz użyć innych agregacji, takich jak: avg(), count(), min() y max()Podczas grupowania wybrane kolumny, które nie są agregowane, muszą być częścią group by.

Pamiętaj, że count(D) zlicza wartości różne od null w DNie sumuje kwot. Wybierz odpowiednią kolumnę, jeśli chcesz policzyć transakcje.

Użyj funkcji PIVOT, LIMIT i OFFSET

Klauzula sworzeń Przekształca wartości pola w kolumny. Na przykład, możesz rozdzielić zrealizowane transakcje każdego klienta między witryną internetową a sklepem:

=QUERY(A1:E6;"select B, sum(D) where C = 'Completado' group by B pivot E";1)

Aby uzyskać tylko trzy najwyższe kwoty, użyj limit po zamówieniu:

=QUERY(A1:E6;"select B, D order by D desc limit 3";1)

Z zrównoważyć Możesz pominąć wiersze w wyniku. To zapytanie pomija pierwsze dwa rekordy w sortowaniu i zwraca kolejne dwa:

=QUERY(A1:E6;"select B, D order by D desc limit 2 offset 2";1)

Klauzule muszą zachowywać następującą kolejność: select, where, group by, pivot, order by, limit, offset, label y format.

Filtruj daty i pracuj z tekstem

Jeśli kolumna A zawiera daty rozpoznane przez Arkusze, możesz wybrać transakcje z października w następujący sposób:

=QUERY(A1:E6;"select * where A >= date '2026-10-01' and A < date '2026-11-01'";1)

Pole daty w zapytaniu używa formatu rok-miesiąc-dzieńNawet jeśli komórki wyświetlają dzień/miesiąc/rok, jeśli źródło zawiera tekst, który wygląda jak data, musisz go najpierw poprawić.

Ekskluzywna zawartość — kliknij tutaj  Jak przekonwertować dokument Google na JPEG

Aby pracować z częściami dat, istnieją: year(), month() y day()Proszę pamiętać, że month() zaczyna się od 0 w styczniu i kończy się na 11 w grudniuPrzy grupowaniu kilku lat należy także brać pod uwagę rok, aby uniknąć pomieszania równorzędnych miesięcy.

W filtrach tekstowych możesz używać contains, starts with, ends with o matchesPorównania uwzględniają wielkość liter. Tekst można znormalizować za pomocą lower() o upper().

Łączenie danych z wielu arkuszy za pomocą Col1 i Col2

Dwóch profesjonalistów przegląda tabele i wykresy na swoich komputerach.

Aby ułożyć rekordy z dwóch kart tego samego pliku, można utworzyć tablicę za pomocą nawiasów klamrowych. Załóżmy, że obie mają te same pięć kolumn i jeden wiersz nagłówków:

=QUERY({Ventas1!A1:E100;Ventas2!A2:E100};"select Col2, Col4 where Col2 is not null";1)

Pierwsze odniesienie zawiera nagłówki; drugie zaczyna się w wierszu 2, aby uniknąć powtórzeń. Zakresy muszą mieć taką samą liczbę kolumn i kompatybilną strukturę.

W tej macierzy, Kolumna 1 reprezentuje pierwszą kolumnę, a Kolumna 2 drugąSą to pozycje w zapytaniu, a nie nazwy pól. Jeśli zmienisz kolejność zawartości kolumn, sprawdź zapytanie, aby upewnić się, że nadal wybiera poprawne informacje.

Ekskluzywna zawartość — kliknij tutaj  Jak skopiować i wkleić płytę DVD

Średnik w nawiasach klamrowych układa zakresy pionowo. Ta operacja nie łączy rekordów za pomocą identyfikatora i nie jest równoważna z wykonaniem połączenia JOIN między tabelami.

Typowe błędy w zapytaniach i jak je znaleźć

  • Brakujące wartości: Kolumna zawierająca typy mieszane może utracić wartości typu mniejszościowego, które QUERY interpretuje jako null.
  • Błąd podczas analizowania zapytania: Sprawdź cudzysłowy, identyfikatory, funkcje i kolejność klauzul.
  • Nie pojawiły się żadne nowe rekordy: Sprawdź, czy znajdują się one w zakresie zapytania. Odwołanie do wiersza 100 nie obejmuje wiersza 101.
  • Macierzy nie można rozwinąć: Pozostaw komórki, w których wynik powinien być widoczny, wolne i sprawdź, czy są wśród nich jakieś połączone komórki.
  • Wiersz danych jest interpretowany jako tytuł: sprawdź argument nagłówka.

Nie zawijaj formuły w JEŻELI.BŁĄD lub JEŻELI.BŁĄD Szukając przyczyny błędu, możesz ukrywać błąd składniowy, mylnie interpretując go jako brak dopasowań.

Gdy zapytanie działa, jeśli chcesz konkretnie zająć się błędem #N/Amożesz użyć SI.ND:

=SI.ND(QUERY(A1:E6;"select B, D where C = 'Devuelto'";1);"Sin coincidencias")

Jeżeli plik zachowuje nazwy funkcji w języku angielskim, użyj IFNAFunkcja ta obsługuje tego typu błędy i sama w sobie nie pokazuje, co było ich przyczyną.

Aby pracować bezpiecznie, zacznij od prostego wyboru i dodaj każdy warunek osobno. Zapytanie przelicza wynik, gdy dane, od których zależy, ulegną zmianie, ale Nie modyfikuje początku ani nie rozszerza automatycznie zakresu zamkniętego..