Предикат уникальности
Функция
Определение условия отсутствия дубликатов в результате запроса.
Спецификация
< предикат уникальности >
::=
[NOT] UNIQUE запрос сравнения
Общие правила
-
Предикат возвращает значение
TRUE
в том и только в том случае, когда в таблице-результате< запроса выборки >
отсутствуют какие-либо две записи, одна из которых является дубликатом другой. В противном случае значение предиката –FALSE
.SELECT count(*) FROM Auto WHERE NOT UNIQUE (values('RED'),('GREEN')); | 0|
SELECT count(*) FROM Auto WHERE NOT UNIQUE (values('RED'),('RED')); | 1000|
Пример
Найти номера отделов, в которых есть однофамильцы:
select distinct "Номер отдела" from "Структура организации" where not unique (select "Фамилия" from "Штатное расписание" where "Штатное расписание"."Номер отдела"="Структура организации"."Номер отдела");