- QUERY ви позволява да филтрирате, сортирате и обобщавате данни, без да променяте оригиналния диапазон.
- Заглавките и типовете данни влияят на резултата, особено когато липсват стойности.
- Комбинираните масиви използват позиционни идентификатори, които трябва да бъдат прегледани, ако структурата се промени.
- Препоръчително е да се диагностицират грешките, преди да се скрият, за да не се обърка неправилна формула със заявка, която няма съвпадения.
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(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Те трябва да бъдат запазени.
Избиране на колони, филтриране и сортиране на резултатите

Клаузата изберете Това ви позволява да изберете колоните. За да се покажат само клиента и сумата:
=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.
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 Не променя началото, нито автоматично разширява затворен диапазон..
Аз съм технологичен ентусиаст, който е превърнал своите „гийк“ интереси в професия. Прекарах повече от 10 години от живота си, използвайки авангардни технологии и бърникайки с всякакви програми от чисто любопитство. Сега съм специализирал компютърни технологии и видео игри. Това е така, защото повече от 5 години пиша за различни уебсайтове за технологии и видео игри, създавайки статии, които се стремят да ви дадат информацията, от която се нуждаете, на език, разбираем за всички.
Ако имате някакви въпроси, познанията ми варират от всичко свързано с операционната система Windows, както и с Android за мобилни телефони. И моят ангажимент е към вас, винаги съм готов да отделя няколко минути и да ви помогна да разрешите всички въпроси, които може да имате в този интернет свят.