← К оглавлению занятия

📝 Задания

📁 Блок: SQL / MySQL / Оконные функции ⏱️ Время изучения: ~60 мин 🎯 Сложность: Повторение

⚡ Кратко: задания

  1. MIN, MAX, AVG unit_price для каждого order_id.
  2. Уникальные строки из задания 1.
  3. Суммарная стоимость заказа окном и через GROUP BY.
  4. Количество продуктов в заказе с учётом статуса.
  5. Кумулятивное количество товаров по дате.
  6. Кумулятивная выручка по дате для каждого продукта.

Все задания выполняются на таблице purchase_order_details.

1

Задание 1. Минимальная, максимальная и средняя цена

Для каждого заказа order_id выведите минимальный, максимальный и средний unit_price.

2

Задание 2. Только уникальные строки

Оставьте только уникальные строки из предыдущего запроса.

3

Задание 3. Суммарная стоимость заказа

Посчитайте стоимость продукта в заказе как quantity * unit_price. Выведите суммарную стоимость продуктов с помощью оконной функции. Сделайте то же самое с помощью GROUP BY.

4

Задание 4. Количество продуктов с учётом статуса

Посчитайте количество продуктов в каждом заказе с учётом их статуса с помощью оконной функции.

5

Задание 5. Кумулятивное количество товаров

Посчитайте кумулятивное количество товаров quantity по дате получения date_received.

6

Задание 6. Кумулятивная выручка по продукту

Посчитайте кумулятивную выручку quantity * unit_cost по дате получения date_received для каждого product_id.

Проверка понимания

Выберите один вариант ответа. После клика правильный ответ подсветится зелёным.

Вопрос 1

Как лучше использовать summary-урок?

Вопрос 2

Что показывает хороший результат после повторения блока?

Вопрос 3

Какой вопрос стоит задать себе после каждого ответа?

Вопрос 4

Что делает SELECT?

Вопрос 5

Почему в SQL важен явный список столбцов?

Вопрос 6

Как лучше форматировать сложный SQL-запрос?

Вопрос 7

Что означает NULL?

Вопрос 8

Почему запросы стоит проверять на маленькой выборке?