Здравствуйте!
Поддержка не сможет помочь с вопросами, связанными с теорией или задачам из курса «Системный аналитик» — в этой ситуации рекомендуем вам обратиться к вашему преподавателю в чате в Slack.
Если же у вас возникнут иные вопросы — обязательно пишите, будем рады помочь :)
GROUP BY — его указывают после условного оператора WHERE. Если WHERE в запросе нет, оператор GROUP BY пишут после FROM.-- нужно указать поля и необходимые вычисления
SELECT billing_city,
ROUND(AVG(total))
-- не забыть таблицу
FROM invoice
-- здесь указывают поле, в котором группируют данные
GROUP BY billing_city
LIMIT 5; | billing_city | round |
|---|---|
| Porto | 5 |
| Budapest | 7 |
| Reno | 5 |
| London | 5 |
| Paris | 6 |
SELECT ROUND(AVG(total))
FROM invoice
GROUP BY billing_city
LIMIT 5; | round |
|---|
| 5 |
| 7 |
| 5 |
| 5 |
| 6 |
total) в США (англ. USA). Информацию о стране хранит поле billing_country.billing_city.billing_city после оператора SELECT и запишите все необходимые агрегирующие функции. Примените группировку и не забудьте вывести поле, по которому группируете данные.customer_id) и среднюю выручку на уникального пользователя для страны США.AVG тут не поможет, ведь нужно посчитать среднюю выручку на каждого уникального пользователя, а не на всех. Выход — поделить одну агрегацию на другую, вот так: SUM(...)/COUNT(...). Для подсчёта уникальных покупателей используйте DISTINCT.invoice_date до недели. Обратите внимание, поле invoice_date хранит данные типа varchar.DATE_TRUNC. Синтаксис оператора такой: DATE_TRUNC('отрезок времени', поле). Необходимое значение отрезка времени — 'week'. Не забудьте преобразовать поле invoice_date в формат timestamp. Сгруппируйте данные по неделе заказа.yahoo и gmail обслужил каждый сотрудник. В итоговой таблице должны быть два поля:yahoo или gmail. Используйте оператор LIKE, чтобы найти записи по шаблону.'low cost';'high cost'.total, но только для тех заказов, при оформлении которых указан почтовый код. В итоговую таблицу должны войти только два поля.xxxxxxxxxxSELECT support_rep_id, COUNT(customer_id)FROM clientWHERE email LIKE '%yahoo%'OR email LIKE '%gmail%'GROUP BY support_rep_id;| support_rep_id | count |
|---|---|
| 3 | 6 |
| 5 | 11 |
| 4 | 9 |