Задача по анализу данных о продажах в MySQL

MySQLMySQLBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Менеджер розничного магазина нуждается в помощи при анализе своих данных о продажах для принятия решений по управлению запасами. В качестве аналитика баз данных вам нужно помочь им рассчитать некоторые важные показатели, используя агрегатные функции и операции группировки в MySQL.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL mysql(("MySQL")) -.-> mysql/BasicKeywordsandStatementsGroup(["Basic Keywords and Statements"]) sql(("SQL")) -.-> sql/DataManipulationandQueryingGroup(["Data Manipulation and Querying"]) sql(("SQL")) -.-> sql/AdvancedDataOperationsGroup(["Advanced Data Operations"]) mysql/BasicKeywordsandStatementsGroup -.-> mysql/use_database("Database Selection") mysql/BasicKeywordsandStatementsGroup -.-> mysql/select("Data Retrieval") sql/DataManipulationandQueryingGroup -.-> sql/order_by("ORDER BY clause") sql/DataManipulationandQueryingGroup -.-> sql/group_by("GROUP BY clause") sql/DataManipulationandQueryingGroup -.-> sql/having("HAVING clause") sql/AdvancedDataOperationsGroup -.-> sql/numeric_functions("Numeric functions") subgraph Lab Skills mysql/use_database -.-> lab-418301{{"Задача по анализу данных о продажах в MySQL"}} mysql/select -.-> lab-418301{{"Задача по анализу данных о продажах в MySQL"}} sql/order_by -.-> lab-418301{{"Задача по анализу данных о продажах в MySQL"}} sql/group_by -.-> lab-418301{{"Задача по анализу данных о продажах в MySQL"}} sql/having -.-> lab-418301{{"Задача по анализу данных о продажах в MySQL"}} sql/numeric_functions -.-> lab-418301{{"Задача по анализу данных о продажах в MySQL"}} end

Расчет показателей категорий

Менеджер магазина нуждается в сводном отчете, показывающем эффективность каждой категории продуктов. Отчет должен включать общее количество проданных товаров и общую выручку по каждой категории.

Задачи

  • Подключиться к MySQL как пользователь root
  • Использовать базу данных retail_store
  • Написать запрос, который:
    • Группирует данные по категориям продуктов
    • Вычисляет общее количество проданных единиц товара по каждой категории
    • Вычисляет общую выручку по каждой категории
    • Сортирует результаты по убыванию общей выручки
  • Сохранить результаты в файл с именем category_sales.txt в директории ~/project

Требования

  • Все операции должны выполняться в директории ~/project
  • В запросе должен использоваться оператор GROUP BY для группировки по категориям
  • Выручка должна быть рассчитана путем умножения количества проданных единиц товара (units_sold) на цену за единицу (unit_price)
  • Значения выручки должны быть округлены до двух знаков после запятой
  • Результаты должны быть отсортированы по убыванию выручки
  • Вывод должен быть сохранен в файл с именем category_sales.txt в директории ~/project

Пример

После написания правильного запроса и сохранения результатов вы можете проверить вывод:

cat ~/project/category_sales.txt
+-------------+-------------+---------------+
| category    | total_units | total_revenue |
+-------------+-------------+---------------+
| Electronics |          35 |      13174.65 |
| Furniture   |          23 |       3519.77 |
| Appliances  |          10 |        799.90 |
+-------------+-------------+---------------+
✨ Проверить решение и практиковаться

Резюме

В этом задании вы практиковались в использовании агрегатных функций MySQL и оператора GROUP BY для анализа данных о продажах. Демонстрируемые навыки включают вычисление сумм, использование арифметических операций в SQL-запросах, группировку данных по категориям и сортировку результатов. Эти основные навыки SQL являются обязательными для составления бизнес-отчетов и анализа показателей эффективности продаж.