SELECT UNIQUEЭто старый синтаксис, поддерживаемый Oracle в SQL. Это синоним с SELECT DISTINCT.
Используйте, SELECT DISTINCTпотому что это стандартный SQL, SELECT UNIQUEнестандартный, и в брендах баз данных, отличных от Oracle, SELECT UNIQUEможет вообще не распознаваться.
Unique - это ключевое слово, используемое в директиве Create Table () для обозначения того, что поле будет содержать уникальные данные, обычно используемые для естественных ключей, внешних ключей и т. Д.
т.е. чей-то номер социального страхования, вероятно, будет уникальным полем в вашей таблице, но не обязательно первичным ключом.
Distinct используется в операторе Select, чтобы уведомить запрос о том, что вы хотите, чтобы уникальные элементы возвращались только тогда, когда поле содержит данные, которые могут быть не уникальными.
SelectDistinct Emp_LName
From Employee
У вас может быть много сотрудников с одинаковой фамилией, но вам нужна только каждая другая фамилия.
Очевидно, что если запрашиваемое поле содержит уникальные данные, ключевое слово Distinct становится излишним.
Возможно, вы хотите, чтобы номера социального страхования были уникальными, но это не так. Например: dailyfinance.com/2010/08/12/…
aij
18
выберите уникальный недопустимый синтаксис для того, что вы пытаетесь сделать
Вы хотите использовать либо выбрать отличную или выбрать отличную
И на самом деле, вам даже не нужно отчетливое / отчетливое в том, что вы пытаетесь сделать. Вы можете устранить дубликаты, выбрав соответствующие параметры оператора объединения.
приведенный ниже запрос сам по себе предоставит только различные значения
select col from table1
unionselect col from table2
если вы хотите дубликаты, вам придется сделать
select col from table1
unionallselect col from table2
если я не ошибаюсь, Oracle позволяет вам сказать select unique..., хотя я бы предпочел действовать по стандартам.
спрашивает
3
Только в Oracle =>
SELECT DISTINCT и SELECT UNIQUE вести себя так же. В то время как DISTINCT является стандартом ANSI SQL, UNIQUE является специфическим оператором Oracle.
В других базах данных (например, sql-server в вашем случае) =>
SELECT UNIQUEневерный синтаксис UNIQUEявляется ключевым словом для добавления уникального ограничения на столбец.
Уникальным был старый синтаксис, тогда как Distinct - новый синтаксис, который теперь является стандартным sql.
Уникальный создает ограничение, что все значения для вставки должны отличаться от других. Ошибка может быть засвидетельствована, если кто-то пытается ввести повторяющееся значение.
Отличительные результаты в удалении повторяющихся строк при получении данных.
Пример: ВЫБЕРИТЕ РАЗЛИЧНЫЕ имена ОТ студента;
CREATE TABLE Персоны (Идентификатор varchar НЕ НУЛЬ УНИКАЛЬНЫЙ , Имя varchar (20));
выберите уникальный недопустимый синтаксис для того, что вы пытаетесь сделать
Вы хотите использовать либо выбрать отличную или выбрать отличную
И на самом деле, вам даже не нужно отчетливое / отчетливое в том, что вы пытаетесь сделать. Вы можете устранить дубликаты, выбрав соответствующие параметры оператора объединения.
приведенный ниже запрос сам по себе предоставит только различные значения
если вы хотите дубликаты, вам придется сделать
источник
select unique...
, хотя я бы предпочел действовать по стандартам.Только в Oracle =>
SELECT DISTINCT
иSELECT UNIQUE
вести себя так же. В то время как DISTINCT является стандартом ANSI SQL, UNIQUE является специфическим оператором Oracle.В других базах данных (например, sql-server в вашем случае) =>
SELECT UNIQUE
неверный синтаксисUNIQUE
является ключевым словом для добавления уникального ограничения на столбец.ВЫБЕРИТЕ DISTINCT
источник
Пример: ВЫБЕРИТЕ РАЗЛИЧНЫЕ имена ОТ студента;
CREATE TABLE Персоны (Идентификатор varchar НЕ НУЛЬ УНИКАЛЬНЫЙ , Имя varchar (20));
источник