Перейти к содержимому

Как не выводить повторяющиеся значения в sql

  • автор:

Артём Санников

Данная книга является руководством для начинающих специалистов в области анализа и обработки данных. В книге рассматривается язык SQL и его процедурное расширение PL/SQL от компании Oracle.

Главная › Базы данных › MySQL › Выборка данных › Уникальные значения в SQL, команда DISTINCT

Уникальные значения в SQL, команда DISTINCT

DISTINCT – параметр, дающий возможность исключить дублирующие значения из результата выполнения запроса SELECT. Другими словами, DISTINCT позволяет устранить избыточные данные при формировании результата.

Синтаксис запроса SELECT с параметром DISTINCT

SELECT DISTINCT поле_таблицы FROM таблица;

Практический пример

У вас есть таблица fruits , которая содержит список фруктов, и вам нужно вывести названия всех фруктов и исключить повторяющиеся значения, если они имеются.

Произведём вывод фруктов без повторяющихся значений:

SELECT DISTINCT name fruits;

Записи по теме

  • Условный оператор WHERE в SQL
  • Оператор AS. Псевдонимы в SQL
  • Выбор данных в SQL, команда SELECT

Не повторяющиеся значения. SQL server

Как сделать, что-бы значения не повторялись при выборке? distinct не помогает.

Запрос

select distinct ot.code, cp.Description, ml.Phone from dwh.dim.dimCatalogCounterparties cp with (nolock) join markets.dbo.otkreplen ot with (nolock) on ot.code = cp.Code collate SQL_Latin1_General_CP1_CI_AS join dwh.dm.CounterpartySegmentMainLink_Arc ml with (nolock) on ml.iCounterpartyID = cp.iCounterpartiesID 

Результат

code Description Phone 101-00003362 ПП Школьний Дмитрий 380663984155 101-00003362 ПП Школьний Дмитрий 380675636350 101-00003362 ПП Школьний Дмитрий 380675636354 101-00003362 ПП Школьний Дмитрий 380675729293 101-00003362 ПП Школьний Дмитрий 380973470838 101-00004499 ГЕДЕОН ДТ 380509107240 101-00004499 ГЕДЕОН ДТ 380542658701 

Система управления базами данных SQLite. Изучаем язык запросов SQL и реляционные базы данных на примере библиотекой SQLite3. Курс для начинающих.

Часть 12.10: Исключить повторяющиеся строки из выборки данных: SELECT DISTINCT в SQLite

  • 12.07.2016
  • SQLite библиотека, Базы данных
  • Комментариев нет

Привет, посетитель сайта ZametkiNaPolyah.ru! Продолжаем изучать базы данных и наше знакомство с библиотекой SQLite3. Часто бывает нужно сделать так, чтобы в результирующей таблице запроса SELECT не было дублирующихся и или повторяющихся строк. Для этих целей в языке запросов SQL и базах данных SQLite есть ключевое слово DISTINCT. DISTINCT исключает повторяющиеся/дублирующиеся строки в результате выборки данных. В этой записи мы с вами разберемся с принципами работы ключевого слова DISTINCT в SQL и в SQLite3. А также посмотрим пример запроса SELECT, в котором не будет дублирующихся строк в результате выборки.

Исключить повторяющиеся строки из выборки данных: SELECT DISTINCT в SQLite

Исключить повторяющиеся строки из выборки данных: SELECT DISTINCT в SQLite

Как исключить повторяющиеся строки при выборке данных из базы данных: SELECT DISTINCT в SQLite

Иногда бывает так, что таблицы в базе данных избыточны и строки в них повторяются, чтобы не выводить повторяющиеся строки в результирующей таблице, которую мы получаем в результате SQL запроса SELECT, у нас есть модификатор DISTINCT. Все очень просто, вы пишите SELECT DISTINCT, а библиотека SQLite3 исключает дубликаты строк в результате выборки. Больше нам здесь добавить нечего.

Хотя нам стоит добавить, что команда SELECT имеет два модификатора: ALL и DISTINCT, как вы уже поняли, эти модификаторы необязательные, а SQLite по умолчанию считает, что вы используете значение ALL, когда делаете выборку данных из базы данных.

Пример исключения повторяющихся строк из выборки данных в базе данных: SELECT DISTINCT в SQLite

Давайте реализуем пример использования SELECT DISTINCT в SQLite и исключим повторяющиеся строки из результирующей таблицы в базе данных SQLite3. Для начала создадим таблицу в базе данных, воспользовавшись командой CREATE:

Уникальные записи – SELECT DISTINCT

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

Приступая к изучению данного материала, рекомендуется ознакомиться с описанием учебной БД.

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

Избавиться от дубликатов можно, добавив в запрос ключевое слово DISTINCT. Оно указывается в предложении SELECT, сразу после ключевого слова SELECT:

SELECT DISTINCT FROM

Выбрать уникальные имена всех сотрудников.

-- Выполняем запрос в контексте учебной базы USE CallCenter SELECT DISTINCT Имя FROM Сотрудники

Общее количество записей в таблице сотрудников составляет 39, но приведенный SQL-код выгрузил 34 строки. 5-ть повторяющихся имен были удалены из результата.

Дополним синтаксис оператора SELECT, описанный в предыдущем уроке, новым ключевым словом:

SELECT [DISTINCT] [Имя_таблицы.]Имя_столбца[, [Имя_таблицы.]Имя_столбца2 …] FROM [[Имя_базы_данных.]Имя_Схемы.]Имя_таблицы
  • Объединение таблиц – UNION
  • Соединение таблиц – операция JOIN и ее виды
  • Тест на знание основ SQL

Если материалы office-menu.ru Вам помогли, то поддержите, пожалуйста, проект, чтобы я мог развивать его дальше.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *