Как да използвате QUERY в Google Таблици: синтаксис и примери

Последна актуализация: 30/10/2026

  • QUERY ви позволява да филтрирате, сортирате и обобщавате данни, без да променяте оригиналния диапазон.
  • Заглавките и типовете данни влияят на резултата, особено когато липсват стойности.
  • Комбинираните масиви използват позиционни идентификатори, които трябва да бъдат прегледани, ако структурата се промени.
  • Препоръчително е да се диагностицират грешките, преди да се скрият, за да не се обърка неправилна формула със заявка, която няма съвпадения.
Как да използвате QUERY в Google Таблици

La Функция QUERY в Google Таблици permite seleccionar columnas, filtrar registros, ordenar resultados y calcular resúmenes mediante una fórmula. Resulta útil cuando necesitas generar un informe que dependa de los datos de otra tabla sin modificar el contenido original.

Su consulta utiliza el lenguaje de Google Visualization, con una sintaxis parecida a SQL. Para empezar no necesitas conocer todo ese lenguaje: puedes construir una consulta sencilla y añadir condiciones o agrupaciones a medida que las necesites.

Синтаксис на QUERY в Google Sheets и първи пример

Синтаксис на QUERY в Google Таблици

Структурата на функцията има три аргумента:

=QUERY(datos; consulta; encabezados)
  • данни: диапазонът или матрицата, към която искате да направите заявка.
  • консултация: инструкциите в кавички или препратка към клетка, която ги съдържа.
  • заглавия: Броят на началните редове в диапазона, които са заглавия. Използвайте 1, ако има ред със заглавие, и 0, ако няма. Ако го пропуснете или въведете -1, Sheets ще се опита да познае.

В следващите примери ще използваме таблица със следната структура:

A: Дата Б: Клиент C: Щат Г: Сума E: Канал
01/10/2026 Ан Запълнено 100 Уеб
02/10/2026 Луис Обеца 80 Магазин
03/10/2026 Ан Запълнено 50 Магазин
04/10/2026 Мартен Запълнено 200 Уеб
05/10/2026 Луис Отменено 40 Уеб

Заглавките са в ред 1, а петте записа заемат редове от 2 до 6. За да върнете цялата таблица, напишете формулата в празно поле, например G1:

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

Примерите използват точка и запетая между аргументитеАко файлът ви използва запетаи, коригирайте тези разделители. Запетаите в текста на заявката, както е в select B, DТе трябва да бъдат запазени.

Изключително съдържание - Щракнете тук  Как да създадете дигитален гардероб с Google Photos и автоматично да организирате дрехите си

Избиране на колони, филтриране и сортиране на резултатите

Лупа върху графики и документи до лаптоп.

Клаузата изберете Това ви позволява да изберете колоните. За да се покажат само клиента и сумата:

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

С където Можете да ограничите записите до изпълнени поръчки:

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

Примерът връща и двете операции на Ана, и тези на Марта. Добавянето подреди по Можете да ги сортирате по низходяща сума:

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

Можете също да комбинирате условия:

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

Тази последна заявка връща за Марта 200 и за Ана 100. Числата се сравняват без кавички; текстовите стойности се записват между единични кавички в заявката.

Групирайте суми с GROUP BY и променете заглавките

За да получите общата сума на клиент, комбинирайте групиране по с сума():

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

El resultado muestra 150 para Ana, 120 para Luis y 200 para Marta. En este caso se incluyen todos los estados porque no hemos añadido un filtro.

Si solo quieres sumar pedidos completados:

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

Можете да използвате други агрегации, като например avg(), count(), min() y max()Когато групирате, избраните колони, които не са агрегирани, трябва да бъдат част от group by.

Запомнете това count(D) брои ненулеви стойности на DНе сумира сумите. Изберете подходяща колона, ако трябва да преброите транзакциите.

Използвайте PIVOT, LIMIT и OFFSET

Клаузата опора Трансформира стойностите на поле в колони. Например, можете да разпределите завършените продажби на всеки клиент между уеб и магазин:

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

За да получите само трите най-високи суми, използвайте лимит след поръчка:

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

С отместване Можете да пропуснете редове от резултата. Тази заявка пропуска първите два записа в сортирането и връща следващите два:

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

Клаузите трябва да спазват реда си: select, where, group by, pivot, order by, limit, offset, label y format.

Филтриране на дати и работа с текст

Ако колона А съдържа дати, разпознати от Таблици, можете да изберете октомврийските транзакции, както следва:

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

Полето за дата в заявката използва формата година-месец-ден, aunque las celdas muestren día/mes/año. Si el origen contiene texto que parece una fecha, tendrás que corregirlo antes.

Изключително съдържание - Щракнете тук  Доклад за тъмната мрежа на Google: Затваряне на инструмента и какво да правим сега

Para trabajar con partes de las fechas existen year(), month() y day()Моля, обърнете внимание, че month() започва от 0 за януари и завършва на 11 за декември. Al agrupar varios años, utiliza también el año para no mezclar meses equivalentes.

En los filtros de texto puedes emplear contains, starts with, ends with o matchesСравненията са чувствителни към малки и големи букви; можете да нормализирате текста с lower() o upper().

Комбинирайте данни от няколко листа, използвайки Col1 и Col2

Двама професионалисти преглеждат таблици и графики на компютрите си.

За да подредите записи от два раздела на един и същ файл, можете да конструирате масив с фигурни скоби. Да предположим, че и двата имат еднакви пет колони и един ред заглавки:

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

La primera referencia incluye los encabezados; la segunda empieza en la fila 2 para no repetirlos. Los rangos deben tener el mismo número de columnas y una estructura compatible.

En esta matriz, Колона1 представлява първата колона, а Колона2 - втората. Son posiciones dentro del conjunto consultado, no nombres de campos. Si reorganizas el contenido de las columnas, revisa la consulta para que siga seleccionando la información correcta.

Изключително съдържание - Щракнете тук  Как работи калкулаторът

El punto y coma dentro de las llaves apila los rangos verticalmente. Esta operación no relaciona registros por un identificador ni equivale a realizar un JOIN entre tablas.

Често срещани грешки в QUERY и как да ги открием

  • Липсващи стойности: Колона със смесени типове може да загуби стойностите на малцинствения тип, което QUERY интерпретира като null.
  • Грешка при синтактичния анализ на заявката: Проверете директните кавички, идентификаторите, функциите и реда на клаузите.
  • Не се появяват нови записи: Проверете дали са включени в заявения диапазон. Препратка до ред 100 не включва ред 101.
  • Матрицата не може да бъде разширена: Оставете клетките, където трябва да се появи резултатът, свободни и проверете дали има обединени клетки.
  • Ред от данни се интерпретира като заглавие: проверете аргумента на заглавката.

Не увивайте формулата в АКО.ГРЕШКА или ИФЕРОР mientras estés buscando el fallo: podrías ocultar un problema de sintaxis y confundirlo con la ausencia de coincidencias.

Cuando la consulta ya funcione, si quieres tratar específicamente un error #N/A, можете да използвате СИ.НД:

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

Ако файлът запазва имената на функциите на английски, използвайте IFNA. Esta función trata los errores de ese tipo; no demuestra por sí misma cuál ha sido su causa.

Para trabajar con seguridad, empieza con una selección sencilla y añade cada condición por separado. QUERY recalcula su resultado cuando cambian los datos de los que depende, pero Не променя началото, нито автоматично разширява затворен диапазон..