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



Pdf көрінісі
бет92/243
Дата21.07.2022
өлшемі3,05 Mb.
#147663
түріУчебно-практическое пособие
1   ...   88   89   90   91   92   93   94   95   ...   243
Байланысты:
Язык SQL. Базовый курс

Описание атрибута
Имя атрибута
Тип PostgreSQL
Идентификатор рейса
flight_id
integer
Номер рейса
flight_no
char(6)
Время вылета по расписанию
scheduled_departure
timestamptz
Время вылета по расписанию,
местное время в пункте отправления
scheduled_departure_local
timestamp
Время прилета по расписанию
scheduled_arrival
timestamptz
Время прилета по расписанию,
местное время в пункте прибытия
scheduled_arrival_local
timestamp
Планируемая продолжительность полета
scheduled_duration
interval
Код аэропорта отправления
departure_airport
char(3)
Название аэропорта отправления
departure_airport_name
text
Город отправления
departure_city
text
Код аэропорта прибытия
arrival_airport
char(3)
Название аэропорта прибытия
arrival_airport_name
text
Город прибытия
arrival_city
text
Статус рейса
status
varchar(20)
Код самолета, IATA
aircraft_code
char(3)
Фактическое время вылета
actual_departure
timestamptz
Фактическое время вылета,
местное время в пункте отправления
actual_departure_local
timestamp
Фактическое время прилета
actual_arrival
timestamptz
Фактическое время прилета,
местное время в пункте прибытия
actual_arrival_local
timestamp
Фактическая продолжительность полета
actual_duration
interval
Известно, что в сфере железнодорожных пассажирских перевозок время в расписа-
нии движения поездов и в билетах указывается московское. А в пассажирских авиа-
перевозках, напротив, время в билетах указывается местное. Это касается и времени
вылета и времени прилета. Если пункты отправления и назначения находятся в раз-
личных часовых поясах, то время вылета будет привязано к одному часовому поясу,
а время прилета — к другому.
Поэтому в нашем представлении «Рейсы» (flights_v) предусмотрены четыре столб-
ца, отображающие местное время: два из них относятся к пункту отправления —
scheduled_departure_local и actual_departure_local, а два других относятся к пункту
прибытия — scheduled_arrival_local и actual_arrival_local. В качестве типа данных для
этих четырех столбцов выбран тип timestamp without time zone (сокращенно — про-
сто timestamp), а не timestamp with time zone (timestamptz). Причина в том, что при
выборе timestamptz время автоматически преобразовывалось бы при выводе дан-
ных к текущему часовому поясу, установленному на компьютере пользователя, а нам
нужно сохранить его значения такими, какими они являются в пункте отправления
и пункте назначения.
95


Для перевода значения типа timestamptz в значение типа timestamp служит конструк-
ция AT TIME ZONE, подробно рассмотренная в разделе документации 9.9 «Операто-
ры и функции даты/времени». Также существует и эквивалентная функция timezone,
которая и используется здесь для пересчета московского времени в местное.
Если вы испытываете затруднения с пониманием операций преобразования значе-
ний типа timestamptz в значения типа timestamp, рекомендуем вам обратиться к раз-
делу документации 8.5.1.3 «Даты и время».
Посмотреть описание представления в базе данных можно с помощью команды


Достарыңызбен бөлісу:
1   ...   88   89   90   91   92   93   94   95   ...   243




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

    Басты бет