SQLLab
SQL-задача· 15 мин

Избыточность данных

+60XP

Задание

Избыточность данных в raw_orders

Контекст: Архитектор данных оценивает степень избыточности в raw_orders, чтобы обосновать перед командой необходимость нормализации. Каждая строка таблицы описывает не только заказ, но и повторяет полное имя и город покупателя — если один покупатель сделал 10 заказов, его имя и город физически хранятся в базе 10 раз. Нужно измерить, насколько часто это происходит.

Техническое задание: Запрос строится по таблице raw_orders.

Сгруппируйте записи по customer_email. Для каждого email выведите:

  • customer_email — email покупателя
  • customer_name — имя покупателя (берите любое значение из группы, например через MAX)
  • customer_city — город покупателя (аналогично, любое значение из группы)
  • appearances — сколько раз этот email встречается в таблице (то есть сколько раз его данные продублированы)

Отсортируйте по appearances по убыванию — сверху самые избыточные записи, затем по customer_email по алфавиту.

Результат выполнения SQL-запроса
ER-диаграмма таблиц базы данных
Анализ плана выполнения запроса PostgreSQL

Результаты появятся здесь после выполнения запроса.