Нужно посмотреть продажи по годам. Выгрузите таблицу, в которую войдут:
- год покупки;
- минимальная сумма заказа;
- максимальная сумма заказа;
- общая сумма выручки;
- количество заказов;
- средняя выручка на уникального покупателя, округлённая до ближайшего целого числа.
Отсортируйте таблицу по году от большего к меньшему. Отберите только те записи, в которых в поле billing_country указаны страны: США (англ. USA), Великобритания (англ. United Kingdom) и Германия (англ. Germany).
SELECT EXTRACT(YEAR FROM CAST(invoice_date AS date)),
MIN(total),
MAX(total),
SUM(total),
COUNT(total),
ROUND(SUM(total)/COUNT(DISTINCT(customer_id)))
FROM invoice
WHERE billing_country IN ('USA',
'United Kingdom',
'Germany')
GROUP BY EXTRACT(YEAR FROM CAST(invoice_date AS date))
ORDER BY EXTRACT(YEAR FROM CAST(invoice_date AS date)) DESC;
Результат
| extract | min | max | sum | count | round |
|---|---|---|---|---|---|
| 2013 | 0.99 | 13.86 | 123.75 | 24 | 8 |
| 2012 | 0.99 | 23.86 | 156.69 | 28 | 9 |
| 2011 | 0.99 | 18.86 | 169.4 | 31 | 9 |
| 2010 | 0.99 | 15.86 | 159.41 | 27 | 11 |
| 2009 | 0.99 | 13.86 | 183.15 | 30 | 11 |
Вы справились с очень сложным запросом, поздравляем!