
Друзья, привет!
продолжаем осваивать всемогущую функцию QUERY.
Сегодня покажем, как собрать с помощью нее данные из нескольких таблиц (важно, чтобы они были одинаковыми по структуре, то есть с одинаковыми полями) и отсортировать их.
В общем случае для нескольких источников данных синтаксис следующий:
=QUERY({диапазон 1;диапазон 2;...};"SELECT ...";[заголовки])
Допустим, у нас есть таблица со списком книг на одном листе - и со списком учебников на другом.
Объединим их в функции QUERY:
=QUERY({'Книги'!A1:D;'Учебники'!A2:D}...
В запросе укажем SELECT * - то есть выберем все столбцы из исходных диапазонов.
В качестве условия укажем WHERE Col2 <> '', то есть все строки, в которых столбец 2 непустой (а значит, все строки с данными из двух таблиц)
Отсортируем по убыванию продаж 2016 года, которые у нас в четвертом столбец:
ORDER BY Col4 DESC
И в итоге получим следующую функцию:
=QUERY({'Книги'!A1:D;'Учебники'!A2:D};"SELECT * WHERE Col2 <> '' ORDER BY Col4 DESC";0)
Обратите внимание, что при использовании нескольких диапазонов данных в QUERY столбцы указываются в формате "ColN", где N - номер столбца.
Ссылка на файл с примером:
https://goo.gl/55UvGk
Всех поздравляем с праздниками!