Пример SELECT запроса
Рассмотрим простой SQL запрос:
sql
-- данные, которые мы извлекаем
select emp.name,
emp.last_name,
emp.age,
dept.name
from employees emp
join departments dept on dept.id = emp.department_id -- соединение
where (emp.id = 10 and emp.age > 25) -- условие выборки
order by name desc -- сортировка
-- данные, которые мы извлекаем
select emp.name,
emp.last_name,
emp.age,
dept.name
from employees emp
join departments dept on dept.id = emp.department_id -- соединение
where (emp.id = 10 and emp.age > 25) -- условие выборки
order by name desc -- сортировка
Конечно, запрос может выглядеть и по-другому, но в целом данный пример раскрывает большую часть из структуры SELECT запроса.
Порядок выполнения
Очень важно понимать, в каком порядке выполняется запрос.
- Сначала происходит соединение таблиц, если таковое имеется
- Затем выборка фильтруется условием
where
- После этого набор данных извлекается из БД. Все функции, которые указаны в части SELECT, выполняются для каждой строки из набора данных
- И только затем этот набор данных сортируется в указанном порядке
Сейчас это может показаться не столь важным, но знания о порядке выполнения запроса пригодятся, когда мы будем рассматривать запросы с использованием псевдостолбца ROWNUM
.