Учебное пособие Санкт-Петербург «бхв-петербург»


SELECT a.aircraft_code, a.model, s.seat_no, s.fare_conditions



Pdf көрінісі
бет124/256
Дата18.11.2022
өлшемі1.88 Mb.
#465124
түріУчебное пособие
1   ...   120   121   122   123   124   125   126   127   ...   256
sql osnovi yazika

SELECT a.aircraft_code, a.model, s.seat_no, s.fare_conditions
FROM seats s, aircrafts a
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 указывают критерии,
которым должны удовлетворять результирующие строки.
155


Глава 6. Запросы
Изучая язык 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,


Достарыңызбен бөлісу:
1   ...   120   121   122   123   124   125   126   127   ...   256




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

    Басты бет