Сверка SQL-отчётов: дубли, JOIN, EXCEPT и ключи

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

Начать практику: Гранулярность SQL JOIN: одна строка на что.

Задачи на код и вопросы с выбором ответа. Проверка доступна без регистрации.

Как проходить

Начните с вопроса «одна строка на что?» и соединения платежей с возвратами. После этого разберите, какие дубли не обнаруживает EXCEPT. В задачах на запросы нужно получить состав договоров, найти неопознанные оплаты и проверить обязательные поля и уникальность.

На что обратить внимание

Если слева для одного заказа две строки, а справа три, соединение по одному order_id может дать шесть строк. Сначала выберите нужный уровень детализации каждой стороны. Для сверки сравните ключи, количество строк на ключ и показатели — это три разные проверки.

Задания

  1. Гранулярность SQL JOIN: одна строка на что — вопрос.
  2. JOIN платежей и возвратов: почему задваивается сумма — вопрос.
  3. SQL EXCEPT: обнаружит ли сверка лишний дубль — вопрос.
  4. SQL: Сверка отчётов по ключам и показателям — Состав договоров и число неопознанных оплат — код.
  5. SQL: Проверка ключей, ссылок и обязательных значений — Нарушения обязательных полей и уникальности — код.

Продолжить обучение

Разберите тему по порядку в курсе Продвинутый SQL: сложные запросы и задачи для собеседований.

Связанная практика: Проверка отчёта аналитика: дубли, JOIN, NULL и полные месяцы.

Сверка SQL-отчётов: дубли, JOIN, EXCEPT и ключи