Учебно-практическое пособие москва 2017 ббк


WHERE s.aircraft_code = a.aircraft_code



Pdf көрінісі
бет116/243
Дата21.07.2022
өлшемі3,05 Mb.
#147663
түріУчебно-практическое пособие
1   ...   112   113   114   115   116   117   118   119   ...   243
Байланысты:
Язык SQL. Базовый курс

WHERE s.aircraft_code = a.aircraft_code
AND a.model ~ '^Cessna'
ORDER BY s.seat_no;
В этом варианте запроса условие соединения таблиц s.aircraft_code = a.aircraft_code
перешло из предложения FROM в предложение WHERE, а таблицы просто перечис-
лены в предложении FROM через запятую. Простые запросы зачастую записывают
именно в такой форме, без предложения JOIN, а в предложении WHERE указывают
критерии, которым должны удовлетворять результирующие строки.
Изучая язык SQL вообще и способы выполнения соединений в частности, нужно
иметь в виду, что
результатом любых реляционных операций над отношениями (таб-
лицами, представлениями) также является отношение
. Поэтому такие операции мож-
но произвольно комбинировать друг с другом.
В соединении одна и та же таблица может участвовать дважды, т. е. формировать
соединение таблицы с самой собой
. В качестве примера рассмотрим запрос для
создания представления «Рейсы» (flights_v), о котором шла речь в главе 5. Этот запрос
выглядит так:
CREATE OR REPLACE VIEW flights_v AS
SELECT f.flight_id,
f.flight_no,
f.scheduled_departure,
timezone( dep.timezone, f.scheduled_departure )
AS scheduled_departure_local,
f.scheduled_arrival,
timezone( arr.timezone, f.scheduled_arrival )
AS scheduled_arrival_local,
f.scheduled_arrival - f.scheduled_departure
AS scheduled_duration,
f.departure_airport,
dep.airport_name AS departure_airport_name,
dep.city AS departure_city,
f.arrival_airport,
arr.airport_name AS arrival_airport_name,
arr.city AS arrival_city,
f.status,
f.aircraft_code,
f.actual_departure,
timezone( dep.timezone, f.actual_departure )


Достарыңызбен бөлісу:
1   ...   112   113   114   115   116   117   118   119   ...   243




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет