Naar inhoud
lightbulb Welkom op de nieuwe kennisbank | We hebben de docs volledig vernieuwd met meer dan 160 features. Bekijk wat nieuw isarrow_forward

De QUERY-functie in Google Sheets: SQL-achtige zoekopdrachten

Met de QUERY-functie filter, sorteer en groepeer je data met een SQL-achtige taal in een enkele cel. Leer de clausules select, where, order by en group by, hoe je kolommen aanduidt en hoe je QUERY combineert met IMPORTRANGE.

De QUERY-functie in Google Sheets brengt de kracht van SQL naar je spreadsheet. In een enkele cel filter, sorteer en groepeer je grote hoeveelheden data zonder dat je rijen handmatig hoeft te selecteren.

De opbouw is =QUERY(bereik; querytekst). Het bereik is je data en de querytekst is een opdracht in de Google Visualisatie-querytaal. Die taal lijkt sterk op SQL, maar verwijst naar kolommen met letters zoals A, B en C in plaats van met kolomnamen.

De basisclausules

Een query bestaat uit clausules die je achter elkaar zet. De volgorde ligt vast: eerst select, dan where, dan group by, dan order by en als laatste limit.

Clausule Wat doet het Voorbeeld
select Kiest kolommen select A, B
where Filtert rijen where C > 100
group by Groepeert group by A
order by Sorteert order by B desc
limit Beperkt het aantal limit 10

Een complete query ziet er zo uit: =QUERY(A1:D100; "select A, C where C > 100 order by C desc limit 5"). Dit toont de vijf rijen met de hoogste waarde in kolom C.

lightbulb

Querytekst tussen aanhalingstekens

Zet de querytekst altijd tussen aanhalingstekens en gebruik kolomletters, niet de koptekst. Sheets kent de kolommen alleen via hun letter binnen het opgegeven bereik. Gebruik je een Nederlandse locale, dan scheid je de argumenten met een puntkomma; in een Engelse locale met een komma.

Filteren en groeperen

De where-clausule filtert op voorwaarden. De group by-clausule vat samen, bijvoorbeeld om de omzet per regio op te tellen.

Omzet per regio optellen

  1. Zet de regio's in kolom A en de bedragen in kolom B.
  2. Klik in een lege cel.
  3. Typ =QUERY(A1:B100; "select A, sum(B) group by A order by sum(B) desc").
  4. Druk op Enter. Sheets toont per regio het opgetelde bedrag, van hoog naar laag.
info

Regel voor group by

In een group by-query moet elke kolom in de select ofwel in de group by staan ofwel een aggregatie zijn zoals sum, avg, count of max. Anders geeft Sheets een foutmelding over een onjuiste groepering.

QUERY combineren met andere functies

QUERY wordt nog krachtiger in combinatie met andere functies, bijvoorbeeld om data uit een ander bestand te halen of om op datum en tekst te filteren.

Met IMPORTRANGE. Wikkel IMPORTRANGE in QUERY: =QUERY(IMPORTRANGE("sheet-url"; "Blad1!A:D"); "select Col1, Col3 where Col3 > 100"). Let op dat je hier Col1 en Col3 gebruikt in plaats van letters.

Met een datumfilter. Filter op datum met het date-trefwoord: =QUERY(A1:C100; "select A, C where B > date '2026-01-01'") toont alleen rijen na die datum. De notatie is altijd jaar-maand-dag.

Met tekst zoeken. Gebruik contains of like: =QUERY(A1:B100; "select A where A contains 'Amsterdam'") filtert op een tekstdeel.

warning

IMPORTRANGE gebruikt Col-verwijzingen

Combineer je QUERY met IMPORTRANGE, dan verwijs je naar kolommen met Col1, Col2 enzovoort in plaats van met A, B. Dat is een veelgemaakte fout die een lege of foutieve uitkomst geeft.

Veelvoorkomende valkuilen

Een paar dingen die vaak misgaan bij QUERY:

  • Gemengde datatypes in een kolom. Staan er getallen en tekst door elkaar in dezelfde kolom, dan negeert QUERY soms een deel van de waarden. Maak de kolom consistent of dwing het type af.
  • Koptekst meegeteld. Voeg eventueel label-clausules toe of geef een extra argument mee voor het aantal kopregels, zodat je kop niet als data wordt behandeld.
  • Hoofdletters in trefwoorden. De clausules zelf zijn niet hoofdlettergevoelig, maar tekstwaarden bij contains en = wel. Amsterdam is niet hetzelfde als amsterdam.
Welke taal gebruikt de QUERY-functie?

De Google Visualisatie-querytaal. Die lijkt op SQL met clausules als select, where, group by en order by, maar verwijst naar kolommen met letters.

Hoe filter ik op een datum in QUERY?

Gebruik het date-trefwoord met de notatie jaar-maand-dag, bijvoorbeeld where B > date '2026-01-01'. Zet de datum tussen enkele aanhalingstekens binnen de querytekst.

Kan ik QUERY op data uit een ander bestand gebruiken?

Ja, wikkel IMPORTRANGE in QUERY. Verwijs dan naar kolommen met Col1, Col2 in plaats van letters, en geef de andere spreadsheet eenmalig toegang.

Waarom werkt mijn group by niet?

Elke geselecteerde kolom moet in de group by staan of een aggregatie zijn. Een gewone kolom zonder sum, count of avg buiten de group by geeft een fout.

Moet ik een puntkomma of een komma gebruiken tussen de argumenten?

Dat hangt af van je locale. Een Nederlandse spreadsheet gebruikt een puntkomma tussen bereik en querytekst, een Engelse een komma. Binnen de querytekst scheid je kolommen altijd met een komma.

De QUERY-functie is een van de krachtigste tools in Sheets voor rapportage. Begin met een eenvoudige select en where, en voeg group by en order by toe zodra je samenvattingen nodig hebt.