Я пытаюсь объединить количество предметов, которые человек купил, в одну строку, чтобы я мог провести анализ корзин сортов в BigQuery. Вот как выглядят мои данные:
Name Date_Processed Items.SKU
John Feb-1 ABC123
ABC245
CST099
Sarah Feb 3 ABC245
CST099
CST099
CZT011
Emily Feb 3 ABC123
Как видите, у каждого покупателя есть одна основная строка в данных, а затем строка для каждого приобретенного товара. Вот что я имею сейчас, но не могу понять, как объединить или объединить данные:
SELECT name, date, ARRAY(SELECT sku FROM UNNEST(line_items) AS itemSKU ORDER BY sku asc)
FROM (
SELECT *, ROW_NUMBER() OVER(PARTITION BY id) AS instance
FROM `shopify.orders`
) orders -- identify duplicate rows
WHERE instance = 1
AND
date(date_processed) BETWEEN date_sub(current_date(), interval 30 day) AND current_date
Могу ли я что-нибудь сделать в BigQuery, чтобы эти данные выглядели так:
Name Date_Processed Items.SKU
John Feb-1 ABC123,ABC245,CST099
Sarah Feb 3 ABC245,CST099,CST099,CZT011
Emily Feb 3 ABC123
Я думал об использовании ARRAY_CONCAT, но не могу заставить это работать.