Задача на расчёт средней выручки от покупателей (PostgreSQL)

Задача:

Проверьте, какую выручку в среднем приносит каждый покупатель. Выгрузите общую сумму выручки, число уникальных покупателей (поле customer_id) и среднюю выручку на уникального пользователя для страны США.

Подсказка:

Функция AVG тут не поможет, ведь нужно посчитать среднюю выручку на каждого уникального пользователя, а не на всех. Выход — поделить одну агрегацию на другую, вот так: SUM(...)/COUNT(...). Для подсчёта уникальных покупателей используйте DISTINCT.

Код:

SELECT customer_id, 
       SUM(total), 
       SUM(DISTINCT(total))/COUNT(DISTINCT(customer_id))
FROM invoice
WHERE billing_country = 'USA'
GROUP BY customer_id

Ответы (0 шт):