Здравствуйте!
Поддержка не сможет помочь с вопросами, связанными с теорией или задачам из курса «Системный аналитик» — в этой ситуации рекомендуем вам обратиться к вашему преподавателю в чате в Slack.
Если же у вас возникнут иные вопросы — обязательно пишите, будем рады помочь :)
HAVING используют для того, чтобы получить срез данных после группировки. У этого оператора есть несколько особенностей:HAVING нельзя применять без оператора GROUP BY;HAVING без агрегирующих функций нет смысла: в таких случаях больше подойдёт WHERE.HAVING всегда указывают после GROUP BY.SELECT customer_id,
SUM(total)
FROM invoice
GROUP BY customer_id
HAVING SUM(total) > 41; rental_rate для каждого рейтинга (поле rating). Оставьте в таблице только те записи, в которых среднее значение rental_rate больше 3.rating и сгруппируйте данные. Отфильтруйте сгруппированные данные оператором HAVING.total) за каждый день этого месяца: выведите день в формате '2011-09-01' и сумму. Информацию о дате заказа хранит поле invoice_date. Не забудьте изменить тип данных в этом поле, чтобы использовать операторы для работы с датой. Оставьте в таблице только те значения суммы, которые больше 1 и меньше 10.invoice_date к типу date. Отберите данные за сентябрь с помощью операторов WHERE и BETWEEN. Получить срез после группировки вам поможет другой оператор.billing_postal_code для каждой страны (поле billing_country). Получите срез: в таблицу должны войти только те записи, в которых поле billing_address не содержит слов Street, Way, Road или Drive. Отобразите в таблице страну и число пропусков, если их больше 10.xxxxxxxxxxSELECT CAST(invoice_date AS date), SUM(total)FROM invoiceWHERE CAST(invoice_date AS date) > '2011-09-01' AND CAST(invoice_date AS date) < '2011-09-30'GROUP BY CAST(invoice_date AS date)HAVING SUM(total)> 1 AND SUM(total)< 10;| invoice_date | sum |
|---|---|
| 2011-09-20 | 3.96 |
| 2011-09-21 | 3.96 |
| 2011-09-22 | 5.94 |
| 2011-09-25 | 8.91 |