У меня есть набор данных в BigQuery, в котором записываются пожертвования, сделанные отдельным лицам в преддверии мероприятия. Вот схема
- first_name: STRING --- (это имя донора)
- payment_date: TIMESTAMP --- (дата пожертвования)
- сумма: STRING --- (сумма пожертвования)
- donated_to_individual: STRING --- (участник собирает пожертвование)
- location: string --- (место проведения мероприятия, в котором будет участвовать человек)
- year_of_run: STRING --- (год события)
Я пытаюсь создать таблицу, из которой я могу построить график текущего счетчика по payment_date лиц для каждого местоположения, получившего в общей сложности 50 долларов или более пожертвований.
Моя лучшая попытка, приведенная ниже, оставила меня с таблицей, в которой можно было подсчитать количество людей, которые собрали 50 долларов или больше, ТОЛЬКО если они получили пожертвование ТОЛЬКО в тот день:
SELECT
donated_to_id_b
,payment_date
,amount
,running_total
,IF(running_total>=50,'$50','NOPE') as reached_50_dollars
FROM
(SELECT
donated_to_individual as donated_to_id_b
,payment_date as payment_date
,amount
,sum(amount) OVER (PARTITION BY donated_to_id_b ORDER BY payment_date ASC, first_name) as running_total
FROM [robotic-charmer-726:bl_test_data.running_count_over_50_then_150]
WHERE year_of_run='2014')
Боюсь, я использую совершенно неправильный подход ... так что любая помощь будет ОЧЕНЬ благодарна!
Я создал общедоступный фиктивный набор данных, который можно найти здесь: bigquery.cloud.google.com/table/robotic-charmer-726:bl_test_data.running_count_over_50_then_150
Спасибо!