Я думал, что это синонимы, но я написал в Microsoft SQL следующее:
Select Unique col from
(select col from table1 union select col from table2) alias
И это не удалось. Изменив его на
Select Distinct col from
(select col from table1 union select col from table2) alias
починил это. Кто-нибудь может объяснить?


Уникальное ключевое слово, используемое в директиве Create Table () для обозначения того, что поле будет содержать уникальные данные, обычно используемые для естественных ключей, внешних ключей и т. д.
Например:
Create Table Employee(
Emp_PKey Int Identity(1, 1) Constraint PK_Employee_Emp_PKey Primary Key,
Emp_SSN Numeric Not Null Unique,
Emp_FName varchar(16),
Emp_LName varchar(16)
)
То есть чей-то номер социального страхования, вероятно, будет уникальным полем в вашей таблице, но не обязательно первичным ключом.
Distinct используется в операторе Select для уведомления запроса о том, что вы хотите, чтобы возвращались только уникальные элементы, когда поле содержит данные, которые могут быть не уникальными.
Select Distinct Emp_LName
From Employee
У вас может быть много сотрудников с одинаковой фамилией, но вам нужны только разные фамилии.
Очевидно, что если запрашиваемое поле содержит уникальные данные, ключевое слово Отчетливый становится излишним.
выбрать уникальный недопустимый синтаксис для того, что вы пытаетесь сделать
вы хотите использовать либо выбрать отдельную строку, либо выбрать отдельную строку
И на самом деле вам даже не нужна отдельная / отдельная строка в том, что вы пытаетесь сделать. Вы можете удалить дубликаты, выбрав соответствующие параметры оператора union.
приведенный ниже запрос сам по себе предоставит только отдельные значения
select col from table1
union
select col from table2
если вам нужны дубликаты, вам нужно будет сделать
select col from table1
union all
select col from table2
если я не ошибаюсь, Oracle позволяет вам сказать select unique..., хотя я бы предпочел действовать стандартным путем.
SELECT UNIQUE - это старый синтаксис, поддерживаемый Oracle разновидностью SQL. Это синоним SELECT DISTINCT.
Используйте SELECT DISTINCT, потому что это стандартный SQL, а SELECT UNIQUE нестандартный, а в базах данных других производителей, кроме Oracle, SELECT UNIQUE может вообще не распознаваться.
Пример: ВЫБЕРИТЕ имена ОТЧЕТЛИВЫЙ ОТ студента;
СОЗДАТЬ ТАБЛИЦУ Лица ( Id varchar NOT NULL УНИКАЛЬНЫЙ, Имя varchar (20));
SELECT DISTINCT и SELECT UNIQUE ведут себя одинаково. В то время как DISTINCT - это стандарт ANSI SQL, UNIQUE - это специальный оператор Oracle.
SELECT UNIQUE - неверный синтаксис. UNIQUE - это ключевое слово для добавления уникального ограничения столбца.
Вы можете захотеть, чтобы номера социального страхования были уникальными, но это не так. Например: dailyfinance.com/2010/08/12/…