Пользуясь таблицей purchase_order_header, посчитайте, сколько денег тратили клиенты на заказы каждый год, а также разницу в тратах между следующим и текущим годами. Разница должна показывать, на сколько траты следующего года отличаются от текущего. В случае, если данных по следующему году нет, используйте NULL. Выгрузите поля:
- год оформления заказа (поле
order_date), приведённый к типуdate; - траты за текущий год (используя поле
subtotal); - разница в тратах между следующим и текущим годами.
SELECT DATE_TRUNC('year', order_date)::date AS year,
SUM(subtotal) AS year_expenditure,
LEAD(SUM(subtotal), 1, NULL) OVER (ORDER BY DATE_TRUNC('year', order_date)::date) - SUM(subtotal) AS year_diff
FROM adventure.purchase_order_header
GROUP BY year;