logo

Как да използвам distinct в SQL?

SQL РАЗЛИЧЕН клаузата се използва за премахване на дублиращите се колони от набора с резултати.

итератор java карта

Ключовата дума distinct се използва заедно с ключова дума select. Полезно е, когато избягваме дублирани стойности, присъстващи в конкретния колони/таблици . The уникални ценности се извличат, когато използваме ключовата дума distinct.

  • SELECT DISTINCT връща само различни ( различен ) стойности.
  • DISTINCT елиминира дублиращите се записи от таблицата.
  • DISTINCT може да се използва с агрегати: БРОЙ, СР., МАКС и т.н.
  • DISTINCT работи с една колона.
  • Няколко колони не се поддържат за DISTINCT.

Синтаксис:

 SELECT DISTINCT expressions FROM tables [WHERE conditions]; 

Параметри:

изрази: Колоните или изчисленията, които искаме да извлечем, се наричат ​​израз.

Маси: Таблиците, които искаме да извлечем записите. В клаузата FROM има само една таблица.

КЪДЕ условия: Условията може да отговарят на избраните записи и не са задължителни.

Забележка:

  • Когато е предоставен един израз в РАЗЛИЧЕН клауза, тогава заявката ще върне уникалните стойности на изразите.
  • Заявката ще извлече уникалните комбинации за изброените изрази, ако е предоставен повече от един израз в РАЗЛИЧЕН клауза тук.
  • В SQL, РАЗЛИЧЕН клаузата не може да игнорира стойностите NULL. Така че, когато използваме клаузата DISTINCT в SQL оператора, нашият набор от резултати ще включва NULL като отделна стойност.

Пример:

Помислете за следното СЛУЖИТЕЛИ маса.

Как да използвам distinct в SQL

Първо, нека да видим, че следната заявка SELECT връща дублиращите се записи за заплати.

 SQL> SELECT SALARY FROM EMPLOYEES ORDER BY SALARY; 

Когато изпълним горната SQL заявка, тя извлича всички записи, включително дублиращите се записи. В горната таблица заплатата на Нютон и Джонсън е същата 20 000.

Как да използвам distinct в SQL

Сега нека използваме РАЗЛИЧЕН ключова дума с горната заявка SELECT.

 SQL> SELECT DISTINCT SALARY FROM EMPLOYEES ORDER BY SALARY; 

Горната SQL заявка премахва дублиращите се записи и показва следния резултат.

Как да използвам distinct в SQL

Пример: Намиране на уникални стойности в колоната

Погледнете клаузата DISTINCT, за да намерите уникалните стойности в една колона в таблицата.

Имаме маса, наречена доставчици със следните данни:

Как да използвам distinct в SQL

От горната таблица ще намерим уникалните състояния.

 SELECT DISTINCT state FROM suppliers ORDER BY state; 

Това са шест записи.

Как да използвам distinct в SQL

Примерът връща уникалното състояние от таблица с доставчици и премахва дублиращите се записи от набора от резултати.

Пример: Намиране на уникални стойности в множество колони

The SQL DISTINCT клаузата се използва за премахване на дублиращите се записи от много полета в израза SELECT.

Влез в SQL израз :

 SELECT DISTINCT city, state FROM suppliers ORDER BY city, state; 

Изход:

Това са 8 записа:

Как да използвам distinct в SQL

Примерът връща всеки уникален град и щат комбинация. Виждаме Редууд Сити и Калифорния , се появява в набора от резултати.

Пример: Клаузата DISTINCT обработва NULL стойности

Клаузата DISTINCT взема предвид НУЛА до уникалната стойност в SQL . Имаме маса, наречена продукти който съдържа данните по-долу.

Как да използвам distinct в SQL

Изберете уникалните стойности от полето fruit_id, което съдържа нулевата стойност. Въведете по-долу SQL синтаксис:

 SELECT DISTINCT fruit_id FROM fruits ORDER BY category_id; 

Избрани са четири записа. Това са резултатите, които виждаме по-долу:

Как да използвам distinct в SQL

В горния пример заявката връща уникалните стойности, които са в идентификатор_на_категория колона. Виждаме до първия ред в набора от резултати, НУЛА е изключителна стойност, която се връща от РАЗЛИЧЕН клауза.