Перейти к содержанию

Практическая Предложение HAVING, ORDER BY

Цель работы

  • Научиться применять предложение HAVING для отбора сгруппированных данных.
  • Закрепить использование оператора ORDER BY для сортировки результатов запроса.
  • Научиться комбинировать WHERE, GROUP BY, HAVING, ORDER BY в аналитических запросах.

Ход работы

Задание 1. Сортировка результатов (ORDER BY)

  1. Выберите любую таблицу своей базы данных.
  2. Составьте запрос SELECT, который выводит 3–5 столбцов.
  3. Отсортируйте результат по одному столбцу:
    • по возрастанию;
    • по убыванию.

Задание 2. ORDER BY по двум столбцам

  1. Выполните выборку данных из таблицы.
  2. Отсортируйте результат по двум столбцам (например, сначала по категории/группе, затем по названию/ФИО/цене).

Задание 3. GROUP BY + HAVING (отбор групп)

  1. Выберите таблицу, где есть повторяющиеся значения по одному признаку (категория, статус, группа).
  2. Выполните группировку GROUP BY по выбранному столбцу.
  3. Подсчитайте количество записей в каждой группе.
  4. Используя HAVING, оставьте только те группы, где количество записей:
    • больше заданного значения.

Задание 4. WHERE + GROUP BY + HAVING

  1. В том же запросе добавьте WHERE, чтобы сначала отобрать часть строк (например, по определённому статусу, периоду, категории).
  2. После этого выполните группировку.
  3. Примените HAVING к результатам группировки.

Задание 5. HAVING с несколькими условиями

  1. Выполните группировку и подсчёт.
  2. В HAVING используйте два условия, объединённые через AND или OR (например, количество больше X и меньше Y).

Задание 6. ORDER BY по агрегатному значению

  1. Выполните группировку и подсчёт количества (COUNT).
  2. Отсортируйте группы по рассчитанному количеству записей:
    • от большего к меньшему.

Задание 7. Итоговый аналитический запрос

Составьте один итоговый запрос, который одновременно использует:

  • WHERE (предварительный отбор строк);
  • GROUP BY (группировка);
  • HAVING (отбор групп);
  • ORDER BY (сортировка результата).

Запрос должен иметь практический смысл для вашей предметной области.


Требования к отчёту

Отчёт должен содержать:

  1. Тему.
  2. Краткое описание своей базы данных (что за предметная область, какие таблицы используются).
  3. Для каждого задания:
    • Используемые таблицы
    • SQL запрос + описание,
    • Результат.