Уроки новичкам

QUERY сортировка данных по содержимому ячейки

QUERY сортировка данных по содержимому ячейки

Динамическая сортировка данных QUERY в Google таблицах

Стоит задача: из столбца с данными нужно вытянуть соответствующие им значения по значениям, которые помещены в раскрывающимся списке в ячейке. Если же в ячейке будет условие, которое не соответствует ни одному из критериев (будет стоять условие «Все») — будет выводиться весь список данных из столбца.

={"Округ";IFERROR(QUERY(B6:C;"select B where C = '"&H6&"'");QUERY(B6:C;"select B"))}
  • B6:C — диапазон с данными, из которых выводится список по содержимому в ячейке H6.
  • H6 — ячейка с раскрывающимся списком, по которому выводится информация из диапазона B6:C.
  • «Округ» — заголовок столбца, в котором выводится необходимая информация.
  • IFERROR — проверяет на ошибку запрос по содержимому ячейки H6. Если выводится ошибка — подставляется второй запрос QUERY.
  • Амперсант «&» — или конкатенация (сцепка) внутри QUERY запроса.
  • QUERY(B6:C;«select B where C = ‘»&H6&«‘») — первый запрос, подставляющий нужные значения, в зависимости от содержимого ячейки H6.
  • QUERY(B6:C;«select B») — второй запрос, подставляющийся функцией IFERROR, выводящий все содержимое столбца B.

QUERY, как на другой лист вывести данные по значению в ячейке в Google таблицах?

Рассмотрим еще пример отображения информации из листа со складом на Google таблицах в соседний лист для подготовки массового импорта товаров в сервис.
По легенде, напротив каждого товара стоит статус, по которому Google таблицы определяют: показывать ли строку или нет.

Если стоит статус — то в соседнем листе будет показываться информация с товаром для дальнейшей обработки.
Каждый столбец обозначается в большом SQL запросе через функцию QUERY в Google Sheets и показывает содержимое ячеек.
Такой список товаров динамически обновляется если изменяются статусы (содержимое ячеек).

=QUERY('Склад'!B3:AV;"select B, G, AN, I, J, D, AD, AA, AM, AG, AT, Y, AB, AE, AU, AV, AP, AR, AS where F = 'Facebook' label B 'ID', G 'Title', AN 'Description', I 'Price', J 'Sale_price', D 'Item_group_id', AD 'Product_type', AA 'Google_product_category', AM 'Gtin', AG 'Color', AT 'Gender', Y 'Age_group', AB 'Brand', AE 'Material', AU 'Availability', AV 'Condition', AP 'Link', AR 'Image_link', AS 'Additional_image_link'
format I '#,##0 RUB', J '#,##0 RUB' ")
  • ‘Склад’!B3:AV — диапазон с данными.
  • B, …, AS — столбцы в нужном порядке, в которых содержится информация по товарам.
  • F — столбце с раскрывающимся списком, в котором находится статус, дающий команду на отображения информации в итоговом листе.
  • ‘#,##0 RUB’ — пользовательский формат числа по условиям площадки, в которую будет массовый импорт товаров.

В итоге, одним запросом можно динамически обновлять списки с данными, заменив в конкретном рабочем примере 18 981 формул на ОДИН запрос QUERY!!!

Функция QUERY сортировка данных по содержимому ячейки в Google таблицах

Статьи по теме