Напишите запрос, который выведет сумму выручки по годам и разницу выручки между текущим и следующим годом. Разница должна показывать, на сколько выручка следующего года отличается от текущего. В случае, если данных по следующему году нет, укажите ноль.
Выгрузите поля:
- год, приведённый к типу
date; - выручка за текущий год;
- разница в выручке между текущим и следующим годом.
WITH t_1 AS (SELECT CAST(DATE_TRUNC('year', paid_at) AS date) AS year_date,
SUM(total_amt) AS year_total
FROM tools_shop.orders
GROUP BY year_date
ORDER BY year_date)
SELECT *,
LEAD(year_total, 1, 638720.14) OVER (ORDER BY year_date) - year_total AS difference
FROM t_1;
Результат
| year_date | year_total | difference |
|---|---|---|
| 2016-01-01 | 136018 | 429736 |
| 2017-01-01 | 565754 | 336606 |
| 2018-01-01 | 902359 | 258161 |
| 2019-01-01 | 1.16052e+06 | 262563 |
| 2020-01-01 | 1.42308e+06 | -784364 |
| 2021-01-01 | 638720 | 0 |
Вы справились со всеми заданиями! Можно переходить к следующей теме.