Google Query Language - Добавление столбца в группу - PullRequest
2 голосов
/ 08 марта 2020

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

изображение таблицы

Table image

Таблица Google: https://docs.google.com/spreadsheets/d/1t9Jvn4cJ4PGdJrEg7oiC6UsY2WaJdSw-d15IWpp3lUg/edit#gid = 0

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

=query(datarange,select col(A),min(col2) group by col(A),-1)

I не понимаю, как я могу добавить самого низкого продавца, потому что я добавляю его, тогда мне нужно сгруппировать его по. Читая другой пост, кажется, что массив формул - это способ получить, но я не понимаю, как мне поступить ...

Ответы [ 2 ]

1 голос
/ 08 марта 2020

попробовать:

=ARRAYFORMULA({"seller"; IFNA(VLOOKUP(F3:F&G3:G, {A:A&B:B, C:C}, 2, 0))})

0


или в F2:

=ARRAYFORMULA({QUERY(A1:C, 
 "select A,min(B) where C is not null group by A", 1), 
 ARRAY_CONSTRAIN({"seller"; IFNA(VLOOKUP(TRANSPOSE(QUERY(TRANSPOSE(QUERY(QUERY(A2:C,
 "select A,min(B) where C is not null group by A", 0), 
 "offset 1", 0)),,999^99)), {A2:A&" "&B2:B, C2:C}, 2, 0))}, COUNTA(QUERY(A1:C, 
 "select A,min(B) where C is not null group by A", 1)), 1)})
0 голосов
/ 08 марта 2020

Мне нравится делать это, используя sort и sortn:

=sortn(sort(filter(A2:C,A2:A<>""),1,true,2,true),999,2,1,true)

Идея состоит в том, что вы сортируете так, чтобы наименьшая цена для каждого продукта была на первом месте с использованием сортировки, а затем отбрасывала дубликаты с использованием sortn, оставляя только строка с самой низкой ценой для каждого товара.

enter image description here

...