Введение в DISTINCT в Oracle
В этой статье мы узнаем о DISTINCT в Oracle. Одним из важных ключевых слов, которые мы используем при извлечении наших значений из одной или нескольких таблиц в базе данных, является ключевое слово DISTINCT. Теперь давайте перейдем к ключевому слову DISTINCT. Когда мы произносим или слышим английское слово «отличное», первое, что приходит нам в голову, это УНИКАЛЬНО или отдельно от других. То же самое относится и к базе данных. В таблице могут быть сотни записей, и из этих записей мы можем иметь дубликаты записей. Это ключевое слово помогает нам получать только уникальные записи.
Синтаксис
Теперь мы рассмотрим синтаксис отдельного ключевого слова в Oracle. В этом случае у нас есть два варианта синтаксиса. Первый синтаксис должен использовать отличное ключевое слово без условий, а второй синтаксис должен использовать отличное ключевое слово с условиями.
Синтаксис без условий: Select DISTINCT(expressions) from table_names;
Синтаксис с условием: Select DISTINCT(expressions) from table_names (where conditions);
параметры
Теперь мы рассмотрим различные параметры, используемые в двух приведенных выше синтаксисах.
- выражения: мы предоставляем имена столбцов или выражения, которые мы хотим выполнить.
- table_names: мы предоставляем имена таблиц, из которых нам нужны записи. Здесь важно отметить, что после предложения должно быть хотя бы одно имя таблицы.
- (Условия «Где»): это необязательно. Если мы предоставим условие «где», мы получим значения после выполнения запроса, только если упомянутое условие выполнено.
Примечание. Следует помнить одну важную информацию : ключевое слово DISTINCT рассматривает нулевое значение также как уникальное значение. Таким образом, в случае, если у нас есть нулевые значения в столбце, и мы используем ключевое слово DISTINCT для извлечения уникальных значений, оно также будет отображать значение NULL в выходных данных.
Как использовать DISTINCT в Oracle?
К настоящему времени мы обсудили, что такое ключевое слово DISTINCT в oracle, синтаксис ключевого слова DISTINCT и различные параметры, используемые в синтаксисе.
Теперь мы рассмотрим различные примеры, чтобы узнать, как эффективно использовать DISTINCT в Oracle. Прежде чем перейти к примерам, мы будем использовать таблицу EMPLOYEE, уже созданную в базе данных. Таблица состоит из пяти столбцов: NAME, VEHICLE_NAME, EMPLOYEE_ID, VEHICLE_ID и CITY. Ниже приведен скриншот значений, присутствующих в таблице сотрудников. Запрос, который мы будем использовать для этого, является основным оператором SELECT.
SELECT * from employee;
При выполнении в SQL-разработчике мы получаем все значения, как показано ниже.
Вывод: таблица сотрудников
Теперь давайте начнем с примеров.
1. Уникальные значения в столбце без условия
В этом примере мы собираемся использовать DISTINCT, чтобы найти уникальные значения в определенном столбце таблицы без каких-либо условий. В качестве примера мы собираемся найти уникальные значения, присутствующие в столбце транспортного средства таблицы сотрудников. Запрос показан ниже:
Код:
select DISTINCT(vehicle_name) from employee;
Выход:
В приведенном выше запросе, как вы можете видеть, мы указали имя столбца, а также имя таблицы. Выполнив вышеуказанный запрос в SQL-разработчике, мы получим следующий вывод.
2. Уникальные значения в столбце с условием
В этом примере мы собираемся найти уникальные значения в столбце, как и в предыдущем примере, но с небольшой модификацией. В этом мы собираемся извлечь уникальные значения, основанные на некотором условии. В качестве примера давайте возьмем уникальные значения имени автомобиля в колонке из таблицы сотрудников, если город не является Калькуттой. Запрос на то же самое приведен ниже.
Код:
select DISTINCT(VEHICLE_NAME) from employee where CITY != 'KOLKATA';
Выход:
Если вы видите вышеупомянутый запрос, запрос должен вернуть значения, которые удовлетворяют условию where. Выполнив вышеуказанный запрос в SQL-разработчике, мы получим следующий вывод.
Как вы можете видеть в предыдущем примере, у нас было шесть уникальных значений, тогда как во втором примере у нас есть пять уникальных значений, поскольку мы добавили определенное условие во втором примере.
3. Уникальные значения из нескольких столбцов
В этом примере мы собираемся найти уникальные значения в нескольких столбцах с помощью DISTINCT. Поэтому в предыдущих примерах мы использовали отдельные столбцы, но в этом случае мы будем использовать несколько столбцов. Например, предположим, что мы хотим найти уникальные значения как названия транспортного средства, так и города, и результаты должны быть в порядке возрастания на основе столбца city. Давайте посмотрим на запрос для того же ниже.
Код:
select DISTINCT VEHICLE_NAME, CITY from employee ORDER BY CITY ASC;
Выход:
Сначала в приведенном выше запросе данные извлекаются в порядке возрастания на основе столбца city, а затем оба значения в столбцах «имя транспортного средства» и «city» используются для получения уникальных пар. Выполнив вышеуказанный запрос в SQL-разработчике, мы получим следующий вывод.
4. DISTINCT со значениями NULL
Ранее в этой статье мы обсуждали, что DISTINCT рассматривает значения NULL как уникальные значения, поэтому если у нас есть столбец с нулевыми значениями в нем. Это будет рассматриваться как уникальная ценность. Например, у нас есть нулевые значения в столбце CITY, которые вы можете увидеть на скриншоте, представленном в начале статьи, где показаны все значения таблицы employee. Итак, мы применим DISTINCT к столбцу CITY, чтобы выяснить влияние нулевых значений на результат. Запрос для того же показан ниже.
Код:
select DISTINCT CITY from employee;
Выход:
Выполнив вышеуказанный запрос в SQL-разработчике, мы получим следующий вывод.
Как мы видим, результат показывает ноль как отдельное значение. Итак, это показывает, что DISTINCT рассматривает нуль как уникальное значение.
Вывод - DISTINCT в Oracle
В этой статье мы обсудили ключевое слово DISTINCT в oracle, синтаксисы, используемые для использования DISTINCT в запросах, параметры, используемые в этих синтаксисах, а затем с помощью различных примеров мы узнали, как мы можем использовать DISTINCT в oracle для решения наших необходимых задач.
Рекомендуемые статьи
Это руководство по DISTINCT в Oracle. Здесь мы обсуждаем ключевое слово DISTINCT в oracle, синтаксисы, используемые для использования DISTINCT в кодах и выводе. Вы также можете просмотреть другие наши статьи, чтобы узнать больше -
- Присоединяется в Oracle
- Что такое база данных Oracle
- Строковые функции Oracle
- Oracle Warehouse Builder