Как использовать функцию QUERY в Google-Таблицах, чтобы объединить данные из разных источников с разным количеством столбцов в один массив?

Как изменить запрос для правильной выгрузки данных из таблицы, чтобы второй массив последовательно выгружался с третьего столбца? 

=QUERY(
{IFERROR(QUERY('Основной лист Тест'!A4:V,
"select A, 'Новые лиды', 'Лодус', B,C,D,E,F,G,H,I
where B is not null or C is not null or D is not null or E is not null or F is not null or G is not null or H is not null or I is not null
label 'Новые лиды' '', 'Лодус' ''",
1);
QUERY({""=\""\""\""0\0\0\0\0\0\0\0\0},"select *")
};
IFERROR(QUERY('Основной лист Тест'!A4:V,
"select A, 'Долгие лиды', 'Лодус', J,K,L,M,N
where J is not null or K is not null or L is not null or M is not null or N is not null
label 'Долгие лиды' '', 'Лодус' '', ' ' ''",
0);
QUERY({""\""\""\""0\0\0\0\0\0\0\0\0},"select *")
};
IFERROR(QUERY('Основной лист Тест'!A4:V,
"select A, 'Архивные лиды', 'Лодус', O,P,Q,R,S,T,U,V
where O is not null or P is not null or Q is not null or R is not null or S is not null or T is not null or U is not null or V is not null
label 'Архивные лиды' '', 'Лодус' ''",
0);
QUERY({""=\""\""\""0\0\0\0\0\0\0\0\0},"select *")
)})
Изображение к вопросу
  • 6 декабря 2023 г. 15:00
Ответы на вопрос 1
Функция QUERY в Google-Таблицах позволяет объединять данные из различных источников и столбцов в один массив. Для этого необходимо использовать фигурные скобки {} для создания массива из нескольких запросов.

Чтобы изменить запрос и выгрузить второй массив с третьего столбца, нужно изменить второй QUERY запрос, указав выборку столбцов начиная с третьего. Ниже приведен пример такого запроса:

=QUERY(
{IFERROR(QUERY('Основной лист Тест'!A4:V,
"select A, 'Новые лиды', 'Лодус', B,C,D,E,F,G,H,I
where B is not null or C is not null or D is not null or E is not null or F is not null or G is not null or H is not null or I is not null
label 'Новые лиды' '', 'Лодус' ''",
1);
QUERY({""=\""\""\""0\0\0\0\0\0\0\0\0},"select *")
};
IFERROR(QUERY('Основной лист Тест'!A4:V,
"select A, 'Долгие лиды', 'Лодус', J,K,L,M,N
where J is not null or K is not null or L is not null or M is not null or N is not null
label 'Долгие лиды' '', 'Лодус' '', ' ' ''",
0);
QUERY({""=\""\""\""0\0\0\0\0\0\0\0\0},"select *")
};
IFERROR(QUERY('Основной лист Тест'!A4:V,
"select A, 'Архивные лиды', 'Лодус', O,P,Q,R,S,T,U,V
where O is not null or P is not null or Q is not null or R is not null or S is not null or T is not null or U is not null or V is not null
label 'Архивные лиды' '', 'Лодус' ''",
0);
QUERY({""=\""\""\""0\0\0\0\0\0\0\0\0},"select *")
)},{3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21}
)

В этом примере добавлен массив {3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21} в конец функции, который указывает, какие столбцы нужно выбрать для второго массива. Эти числа соответствуют третьему столбцу и последующим столбцам данных.

Обратите внимание, что после каждого QUERY запроса добавлена QUERY({""=\""\""\""0\0\0\0\0\0\0\0\0},"select *"), чтобы добавить пустую строку между массивами данных и избежать ошибки при объединении.
Похожие вопросы