- QUERY vam omogućuje filtriranje, sortiranje i sažimanje podataka bez mijenjanja izvornog raspona.
- Zaglavlja i tipovi podataka utječu na rezultat, posebno kada nedostaju vrijednosti.
- Kombinirani nizovi koriste pozicijske identifikatore, koji se moraju pregledati ako se struktura promijeni.
- Preporučljivo je dijagnosticirati pogreške prije njihovog skrivanja, kako se ne bi pomiješala netočna formula s upitom koji nema podudaranja.
La Funkcija QUERY u Google tablicama Omogućuje vam odabir stupaca, filtriranje zapisa, sortiranje rezultata i izračun sažetaka pomoću formule. To je korisno kada trebate generirati izvješće koje se oslanja na podatke iz druge tablice bez mijenjanja izvornog sadržaja.
Vaš upit koristi jezik Google Visualization, sa sintaksom sličnom SQL-u. Za početak ne morate znati cijeli taj jezik: možete izraditi jednostavan upit i dodati uvjete ili grupiranja po potrebi.
Sintaksa QUERY u Google tablicama i prvi primjer

Struktura funkcije ima tri argumenta:
=QUERY(datos; consulta; encabezados)
- podaci: raspon ili matrica koju želite upitati.
- konzultacija: upute u navodnicima ili referencu na ćeliju koja ih sadrži.
- naslovi: Broj početnih redaka u rasponu koji su naslovi. Koristite 1 ako postoji redak naslova i 0 ako ga nema. Ako ga izostavite ili unesete -1, Tablice pokušavaju pogoditi.
U sljedećim primjerima koristit ćemo tablicu s ovom strukturom:
| A: Datum | B: Klijent | C: Država | D: Iznos | E: Kanal |
|---|---|---|---|---|
| 01/10/2026 | Ana | Ispunjeno | 100 | Web |
| 02/10/2026 | Luis | Naušnica | 80 | Trgovina |
| 03/10/2026 | Ana | Ispunjeno | 50 | Trgovina |
| 04/10/2026 | kuna | Ispunjeno | 200 | Web |
| 05/10/2026 | Luis | Otkazano | 40 | Web |
Zaglavlja su u retku 1, a pet zapisa zauzimaju retke od 2 do 6. Da biste vratili cijelu tablicu, formulu napišite u prazno područje, na primjer G1:
=QUERY(A1:E6;"select *";1)
U primjerima se koristi točka-zarez između argumenataAko vaša datoteka koristi zareze, prilagodite te razdjelnike. Zarezi u tekstu upita, kao u select B, DMoraju se sačuvati.
Odaberite stupce, filtrirajte i sortirajte rezultate

Klauzula odabrati To vam omogućuje odabir stupaca. Za prikaz samo kupca i iznosa:
=QUERY(A1:E6;"select B, D";1)
S gdje Zapise možete ograničiti na dovršene narudžbe:
=QUERY(A1:E6;"select B, D where C = 'Completado'";1)
Primjer vraća i Anine i Martine operacije. Dodavanje poredati po Možete ih sortirati po silaznom iznosu:
=QUERY(A1:E6;"select B, D where C = 'Completado' order by D desc";1)
Također možete kombinirati uvjete:
=QUERY(A1:E6;"select B, D where C = 'Completado' and D >= 100 order by D desc";1)
Ovaj posljednji upit vraća Marti 200 i Ani 100. Brojevi se uspoređuju bez navodnika; tekstualne vrijednosti se pišu između navodnika unutar upita.
Grupirajte iznose pomoću GROUP BY i promijenite zaglavlja
Da biste dobili ukupan iznos po kupcu, kombinirajte grupiraj po s iznos():
=QUERY(A1:E6;"select B, sum(D) group by B label sum(D) 'Importe total'";1)
Rezultat pokazuje 150 za Anu, 120 za Luisa i 200 za Martu. U ovom slučaju, uključene su sve države jer nismo dodali filtar.
Ako želite dodati samo dovršene narudžbe:
=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žete koristiti i druge agregacije, kao što su avg(), count(), min() y max()Prilikom grupiranja, odabrani stupci koji nisu agregirani moraju biti dio group by.
Zapamtite to count(D) broji vrijednosti D koje nisu nullNe zbraja iznose. Odaberite odgovarajući stupac ako trebate brojati transakcije.
Koristite PIVOT, LIMIT i OFFSET
Klauzula stožer Pretvara vrijednosti polja u stupce. Na primjer, možete distribuirati dovršene prodaje svakog kupca između weba i trgovine:
=QUERY(A1:E6;"select B, sum(D) where C = 'Completado' group by B pivot E";1)
Da biste dobili samo tri najveća iznosa, koristite ograničiti nakon narudžbe:
=QUERY(A1:E6;"select B, D order by D desc limit 3";1)
S pomak Možete izostaviti retke iz rezultata. Ovaj upit preskače prva dva zapisa u sortiranju i vraća sljedeća dva:
=QUERY(A1:E6;"select B, D order by D desc limit 2 offset 2";1)
Klauzule moraju poštivati svoj redoslijed: select, where, group by, pivot, order by, limit, offset, label y format.
Filtriranje datuma i rad s tekstom
Ako stupac A sadrži datume koje Tablice prepoznaju, možete odabrati listopadske transakcije na sljedeći način:
=QUERY(A1:E6;"select * where A >= date '2026-10-01' and A < date '2026-11-01'";1)
Polje datuma unutar upita koristi format godina-mjesec-danČak i ako ćelije prikazuju dan/mjesec/godinu. Ako izvor sadrži tekst koji izgleda kao datum, prvo ga morate ispraviti.
Za rad s dijelovima datuma postoje year(), month() y day()Imajte na umu da month() počinje od 0 za siječanj i završava od 11 za prosinacPrilikom grupiranja nekoliko godina, koristite i godinu kako biste izbjegli miješanje ekvivalentnih mjeseci.
U tekstualnim filterima možete koristiti contains, starts with, ends with o matchesUsporedbe razlikuju velika i mala slova; tekst možete normalizirati pomoću lower() o upper().
Kombiniranje podataka iz više listova pomoću Col1 i Col2

Za slaganje zapisa iz dvije kartice iste datoteke, možete konstruirati niz s vitičastim zagradama. Pretpostavimo da oba imaju istih pet stupaca i jedan redak zaglavlja:
=QUERY({Ventas1!A1:E100;Ventas2!A2:E100};"select Col2, Col4 where Col2 is not null";1)
Prva referenca uključuje zaglavlja; druga počinje u retku 2 kako bi se izbjeglo ponavljanje. Rasponi moraju imati isti broj stupaca i kompatibilnu strukturu.
U ovoj matrici, Col1 predstavlja prvi stupac, a Col2 drugiTo su pozicije unutar upitanog skupa, a ne nazivi polja. Ako promijenite raspored sadržaja stupca, provjerite upit kako biste bili sigurni da i dalje odabire ispravne informacije.
Točka-zarez unutar vitičastih zagrada slaže raspone okomito. Ova operacija ne povezuje zapise identifikatorom i nije ekvivalentna izvršavanju JOIN-a između tablica.
Uobičajene QUERY pogreške i kako ih pronaći
- Nedostajuće vrijednosti: Stupac s miješanim tipovima može izgubiti vrijednosti manjinskog tipa, što QUERY interpretira kao null.
- Pogreška pri parsiranju upita: Provjerite direktne navodnike, identifikatore, funkcije i redoslijed klauzula.
- Nema novih zapisa: Provjerite jesu li uključeni u upitni raspon. Referenca do retka 100 ne uključuje redak 101.
- Matrica se ne može proširiti: Ostavite ćelije u kojima bi se trebao pojaviti rezultat slobodnima i provjerite ima li spojenih ćelija.
- Redak podataka se interpretira kao naslov: provjerite zaglavni argument.
Ne zamatajte formulu u AKO.POGREŠKA ili AKO.POGREŠKA Dok tražite grešku: mogli biste skrivati sintaktički problem i zamijeniti ga za nedostatak podudaranja.
Nakon što upit proradi, ako želite konkretno riješiti grešku #N/A, možete koristiti SI.ND:
=SI.ND(QUERY(A1:E6;"select B, D where C = 'Devuelto'";1);"Sin coincidencias")
Ako datoteka sadrži nazive funkcija na engleskom, koristite IFNAOva funkcija obrađuje pogreške te vrste; sama po sebi ne pokazuje koji je bio njihov uzrok.
Za siguran rad, počnite s jednostavnim odabirom i dodajte svaki uvjet zasebno. QUERY ponovno izračunava svoj rezultat kada se podaci o kojima ovisi promijene, ali Ne mijenja ishodište niti automatski proširuje zatvoreni raspon..
Ja sam tehnološki entuzijast koji je svoje "geek" interese pretvorio u profesiju. Proveo sam više od 10 godina svog života koristeći vrhunsku tehnologiju i petljajući sa svim vrstama programa iz čiste znatiželje. Sada sam se specijalizirao za računalne tehnologije i video igre. To je zato što sam više od 5 godina pisao za razne web stranice o tehnologiji i videoigrama, stvarajući članke koji vam nastoje dati informacije koje su vam potrebne na jeziku koji je svima razumljiv.
Ako imate bilo kakvih pitanja, moje znanje seže od svega vezanog uz Windows operativni sustav kao i Android za mobitele. I moja je posvećenost vama, uvijek sam spreman odvojiti nekoliko minuta i pomoći vam riješiti sva pitanja koja imate u ovom internetskom svijetu.