Результаты QUERY с функциями count, group, order - PullRequest
0 голосов
/ 25 июня 2019

У меня есть 5 столбцов данных, которые я хочу вернуть из запроса, плюс счетчик первого столбца.

Пара других вещей, которые я хочу, это включать только активные списки (которые хранятсяпо тегу «Включить» в столбце M), и я хочу, чтобы данные были рандомизированы (я делаю это путем создания генератора случайных чисел в столбце P).Ни один из этих последних 2 не должен отображаться.Данные, которые я хотел бы вернуть, находятся в столбцах Q, R, S, T, U.

Мои данные выглядят так:

M       N       O       P       Q           R       S       T       U
Active  Text    Text    RN      Phone#      ID      Name    Level   Location
Include text    text    0.51423 10000001    1223    Bob     Level 2 Boston
Include text    text    0.34342 10000005    2234    Dylan   Level 3 San Francisco
Exclude text    text    0.56453 10000007    2311    Janet   Level 8 Des Moines
Include text    text    0.23122 10000008    2312    Gina    Level 8 Houston
Include text    text            10000001    1225    Ronda   Level 3 Boston
Include text    text            10000001    1236    Nathan  Level 2 Boston

Так что в идеале результаты должны выглядеть следующим образом:

count Phone#    Phone#      ID      Name    Level       Location
3               10000001    1223    Bob     Level 2     Boston
1               10000005    2234    Dylan   Level 3     San Francisco
1               10000008    2312    Gina    Level 8     Houston

Мне все равно, какой идентификатор или имя отображается за номером телефона, если это один из номеров в списке.

Теперь я смогзаставить функцию работать отдельно (ORDER и COUNT), но не может заставить обе работать в одной функции:

Работает:

=QUERY(Function!M:U, "SELECT count (Q), Q where O = 'Include' group by Q")

=QUERY(Function!M:U, "SELECT Q, R, S, T, U where O = 'Include' ORDER BY P DESC")

Не работает:

=QUERY(Function!M:U, "SELECT count (Q), Q group by Q, R, S, T, U where O = 'Include' group by Q ORDER BY P DESC, R, S, T, U")

=QUERY(Function!M:U, "SELECT count (Q), Q, R, S, T, U group by Q where O = 'Include' group by Q ORDER BY P DESC")

=QUERY(Function!M:U, "SELECT count (Q), Q group by Q where O = 'Include' group by Q ORDER BY P DESC, R, S, T, U")

Может быть, у кого-то есть идея, где я ошибаюсь, комбинируя два разных типа синтаксиса?Помощь очень ценится!:)

1 Ответ

1 голос
/ 25 июня 2019
=ARRAYFORMULA({"count Phone#", "Phone#", "ID", "Name", "Level", "Location"; 
 QUERY(Function!M3:U, 
 "select count(Q),Q where P is not null group by Q label count(Q)''", 0),
 IFERROR(VLOOKUP(INDEX(QUERY(Function!M3:U, 
 "select Q,count(Q) where P is not null group by Q label count(Q)''", 0),,1),
 QUERY(Function!M3:U, 
 "select Q,R,S,T,U where P is not null order by P desc", 0), {2, 3, 4, 5}, 0))})

0


ячейка P2 :

=ARRAYFORMULA({"RN"; IF(M3:M="Include", RANDBETWEEN(ROW(A3:A),99^9), )})
...