Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад

Для чего используется DISTINCT?

Вопрос проверяет понимание ключевого слова DISTINCT в SQL, которое используется для исключения дублирующихся строк из результата запроса.

Короткий ответ

Ключевое слово DISTINCT в SQL используется в операторе SELECT для возврата только уникальных (неповторяющихся) строк в результирующем наборе. Оно удаляет дубликаты, основываясь на всех выбранных столбцах. Например, SELECT DISTINCT city FROM customers вернёт список городов без повторов. Это полезно для анализа уникальных значений в данных.

Длинный ответ

Ключевое слово DISTINCT — это модификатор в языке SQL, который применяется в предложении SELECT для фильтрации дублирующихся записей. Когда вы выполняете запрос, база данных может вернуть множество строк, некоторые из которых полностью идентичны по значениям выбранных столбцов. DISTINCT гарантирует, что в итоговом наборе каждая комбинация значений будет представлена только один раз.

Как работает DISTINCT

При обработке запроса с DISTINCT СУБД выполняет сортировку или хеширование результирующих строк, чтобы сравнить их и устранить повторы. Важно понимать, что уникальность определяется по всем столбцам, перечисленным после SELECT. Например, запрос SELECT DISTINCT department, job_title FROM employees вернёт уникальные пары "отдел-должность", а не просто уникальные отделы или должности по отдельности.

Примеры использования

Рассмотрим таблицу заказов (orders) с полями customer_id и product_id. Чтобы узнать, какие продукты вообще покупались (без учёта того, сколько раз), используем DISTINCT:

-- Получить список уникальных ID продуктов
SELECT DISTINCT product_id
FROM orders;

DISTINCT также можно комбинировать с агрегатными функциями, хотя это менее распространено. Например, чтобы посчитать количество уникальных покупателей:

SELECT COUNT(DISTINCT customer_id) AS unique_customers
FROM orders;

Где применяется

  • Для построения выпадающих списков (select) в интерфейсах, где нужно показать только уникальные значения (например, список стран).
  • При анализе данных для получения уникальных категорий или меток.
  • Для устранения дублей после JOIN-операций, если связи между таблицами могут порождать повторяющиеся строки.

Вывод: DISTINCT — это базовый, но мощный инструмент для очистки результирующих данных от дубликатов. Его стоит применять, когда вам нужен список уникальных значений из одного или нескольких столбцов, но важно помнить о потенциальных затратах на производительность при работе с большими объёмами данных, так как устранение дублей требует дополнительных вычислений.

Уровень

  • Рейтинг:

    4

  • Сложность:

    2

Навыки

  • SQL

Ключевые слова

#SQL

#DISTINCT

#SELECT

#duplicates

#database query

Подпишись на Java Developer в телеграм