как группировать и помещать верхние n элементов в массив в BQ - PullRequest
0 голосов
/ 04 октября 2018

это моя структура таблицы:

table schema

Как я могу сгруппировать по bq_category и показать топ-3 брендов (по количеству продуктов), вложенных в1 массив?

например

 1111140     Cai, SKAGEN, ESPRIT 
 1111141     FIRRETTI 
 1111142     SOCOSI, Engelsurfer

1 Ответ

0 голосов
/ 04 октября 2018

Используйте функцию ARRAY_AGG:

SELECT
  bq_category,
  ARRAY_AGG(prodBrand ORDER BY product_count DESC LIMIT 3) AS top_brands
FROM dataset.table
GROUP BY
  bq_category
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...