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 като отделна стойност.
Пример:
Помислете за следното СЛУЖИТЕЛИ маса.
Първо, нека да видим, че следната заявка SELECT връща дублиращите се записи за заплати.
SQL> SELECT SALARY FROM EMPLOYEES ORDER BY SALARY;
Когато изпълним горната SQL заявка, тя извлича всички записи, включително дублиращите се записи. В горната таблица заплатата на Нютон и Джонсън е същата 20 000.
Сега нека използваме РАЗЛИЧЕН ключова дума с горната заявка SELECT.
SQL> SELECT DISTINCT SALARY FROM EMPLOYEES ORDER BY SALARY;
Горната SQL заявка премахва дублиращите се записи и показва следния резултат.
Пример: Намиране на уникални стойности в колоната
Погледнете клаузата DISTINCT, за да намерите уникалните стойности в една колона в таблицата.
Имаме маса, наречена доставчици със следните данни:
От горната таблица ще намерим уникалните състояния.
SELECT DISTINCT state FROM suppliers ORDER BY state;
Това са шест записи.
Примерът връща уникалното състояние от таблица с доставчици и премахва дублиращите се записи от набора от резултати.
Пример: Намиране на уникални стойности в множество колони
The SQL DISTINCT клаузата се използва за премахване на дублиращите се записи от много полета в израза SELECT.
Влез в SQL израз :
SELECT DISTINCT city, state FROM suppliers ORDER BY city, state;
Изход:
Това са 8 записа:
Примерът връща всеки уникален град и щат комбинация. Виждаме Редууд Сити и Калифорния , се появява в набора от резултати.
Пример: Клаузата DISTINCT обработва NULL стойности
Клаузата DISTINCT взема предвид НУЛА до уникалната стойност в SQL . Имаме маса, наречена продукти който съдържа данните по-долу.
Изберете уникалните стойности от полето fruit_id, което съдържа нулевата стойност. Въведете по-долу SQL синтаксис:
SELECT DISTINCT fruit_id FROM fruits ORDER BY category_id;
Избрани са четири записа. Това са резултатите, които виждаме по-долу:
В горния пример заявката връща уникалните стойности, които са в идентификатор_на_категория колона. Виждаме до първия ред в набора от резултати, НУЛА е изключителна стойност, която се връща от РАЗЛИЧЕН клауза.