Введение в Select в Oracle

Oracle является одной из наиболее широко используемых баз данных в отрасли. Наиболее часто используемый запрос - это запрос SELECT. Этот запрос используется для извлечения данных из одной или нескольких таблиц в базе данных. Запрос SELECT используется не только один, но вместе с ним, многие условия, предложения и внутренние запросы используются для получения данных из баз данных в отрасли. Запрос SELECT не манипулирует никакими данными в таблице, в которой он выполняется. В этой статье мы обсудим различные способы использования запроса SELECT в ORACLE.

Синтаксис:

SELECT expressions
FROM tables
(WHERE conditions);

Первые две строки в синтаксисе являются обязательной частью синтаксиса, но (условия WHERE) являются необязательными, поскольку они используются, если мы хотим извлечь данные из одной или нескольких таблиц на основе некоторых условий. «Выражения» в синтаксисе представляют столбцы таблицы. Если мы хотим извлечь все поля из таблицы, мы ставим '*' вместо 'выражений' в синтаксисе, в противном случае мы ставим имена столбцов.

Примеры реализации Select в Oracle

Ниже приведены различные примеры выбора в Oracle.

1. ВЫБЕРИТЕ все поля без условия WHERE

Чтобы выбрать все поля из таблиц: Мы будем использовать символ «*», чтобы показать, что мы хотим извлечь все поля из определенной таблицы.

Запрос:

SELECT * from employee;

Этот запрос будет извлекать все записи из таблицы, поскольку к ней не добавлено условие условия.

Выход:

2. ВЫБЕРИТЕ все поля с условием ГДЕ

Теперь мы будем использовать условие where для того же ранее использованного запроса. В этом запросе нам нужны только данные конкретного сотрудника. Для достижения этого мы будем использовать условие where. давайте посмотрим на запрос

Запрос:

SELECT * from employee WHERE EMPLOYEE_ID= 'AD001';

Мы используем EMPLOYEE_ID в этом запросе, так как он является первичным ключом в этой таблице и поэтому является уникальным.

Выход:

3. ВЫБЕРИТЕ одно поле из таблицы

В этом примере мы будем использовать инструкцию SELECT, чтобы выбрать несколько полей, но не все поля из таблицы. Давайте посмотрим на запрос.

Запрос:

SELECT employee_id, name from employee;

Этот запрос будет отображать только два столбца, потому что мы не использовали '*' после SELECT в этом запросе.

Выход:

4. ВЫБЕРИТЕ поля из нескольких таблиц

В этом примере мы собираемся использовать инструкцию SELECT для извлечения данных из более чем одной таблицы, используя JOIN. Давайте посмотрим на запрос.

Запрос:

SELECT employee.name, vehicle.vehicle_name from employee INNER JOIN vehicle ON employee.vehicle_id = vehicle.vehicle_id;

Здесь в этом запросе мы используем оператор SELECT, который объединяет две таблицы на основе условия, что идентификатор транспортного средства из таблицы сотрудников должен совпадать с идентификатором транспортного средства из таблицы транспортных средств. Запрос отображает имя сотрудника из таблицы сотрудников и имя транспортного средства из таблицы транспортных средств.

Выход:

5. Отображение записей по порядку с помощью SELECT

Мы также можем отображать определенные записи в ORDER, которые могут быть восходящими или нисходящими, используя предложение ORDER BY с запросом. Мы рассмотрим запросы как по возрастанию, так и по убыванию.

а. Запрос по возрастанию

SELECT * from employee ORDER BY name ASC;

В этом запросе мы отображаем все записи, и результирующий набор сортируется по имени в порядке возрастания.
На снимке экрана ниже показан результат выполнения запроса в SQL Developer.

Выход:

б. Запрос по убыванию

SELECT * from employee ORDER BY name DESC;

В этом запросе мы отображаем все записи из таблицы, и результирующий набор сортируется по имени в порядке убывания
На снимке экрана ниже показан результат выполнения запроса в SQL Developer.

Выход:

6. ВЫБЕРИТЕ запрос с предложением GROUP BY

Мы используем предложение GROUP BY с оператором SELECT, когда хотим получить записи, основанные на группах. Так что в основном он группирует строки с одинаковыми значениями. Обычно используется в сопряжении с агрегатными функциями. Это полезно при составлении сводных отчетов.

Теперь мы рассмотрим пример, чтобы увидеть, как мы можем использовать GROUP BY с оператором SELECT в базе данных oracle.

Запрос:

SELECT COUNT(EMPLOYEE_ID), VEHICLE_NAME FROM employee GROUP BY VEHICLE_NAME;

Таким образом, в приведенном выше примере мы находим количество сотрудников, использующих автомобиль определенной марки. GROUP BY группирует записи в зависимости от типа автомобиля, а затем мы используем статистическую функцию COUNT для расчета количества сотрудников в каждой группе, используя столбец employee_id, поскольку он является первичным ключом таблицы.

Выход:

7. ВЫБЕРИТЕ запрос с предложением HAVING

Предложение has используется с оператором select, где мы хотим иметь некоторые условия, когда ключевое слово нельзя использовать напрямую с агрегатными функциями. Это причина, по которой в SQL был добавлен пункт Имеющий. Мы собираемся увидеть пример того, как мы можем использовать предложение has с оператором select.

Запрос:

SELECT COUNT(EMPLOYEE_ID), VEHICLE_NAME FROM employee GROUP BY VEHICLE_NAME HAVING COUNT(EMPLOYEE_ID)> 2;

Как мы видим, мы добавили предложение HAVING в GROUP BY, из-за чего мы можем поставить условие, что должны отображаться только автомобили с количеством сотрудников более двух. Вот где предложение HAVING становится полезным.

Выход:

Если мы видим вывод, мы получаем только две записи вместо пяти, которые мы получили, когда использовали функцию GROUP BY.

Вывод

В этой статье мы узнали синтаксис и причину, по которой мы используем SELECT, а также различные способы, которыми мы можем написать запрос SELECT в SQL, а также где и по какой причине мы должны их использовать.

Рекомендуемые статьи

Это руководство по выбору в Oracle. Здесь мы обсуждаем введение и различные примеры запросов на выборку в SQL с синтаксисом. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Присоединяется в Oracle
  2. Oracle Data Warehousing
  3. Agile Oracle
  4. Что такое база данных Oracle
  5. 6 лучших примеров запросов внутреннего объединения в Oracle
  6. Отличия первичного ключа от внешнего ключа