powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Прошу помощи для расчёта расстояния между аэропортами из учебной базы Avia
3 сообщений из 3, страница 1 из 1
Прошу помощи для расчёта расстояния между аэропортами из учебной базы Avia
    #40111949
Julia Not
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!

Работаю с демо базой Avia, хочу найти расстояние по каждому маршруту между аэропортами из таблицы Flights.

В таблице airports_data имею наименование аэропорта, код и координаты.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
with rad as(
select radians(ad.coordinates[0]) as Lat1, radians(ad.coordinates[1]) as Lon1, radians(ad2.coordinates[0])as Lat2, radians(ad2.coordinates[1]) as Lon2, ad.airport_code as Otpr, ad2.airport_code as Pril 
from airports_data ad
inner join airports_data ad2 on ad.airport_code = ad2.airport_code)
select acos(sin(rad.Lat1) * sin(rad.Lat2) + cos(rad.Lat1) * cos(rad.Lat2) * cos(rad.Lon1 - rad.Lon2)), fv.departure_airport_name, fv.arrival_airport_name
from rad
inner join flights_v fv on fv.departure_airport = rad.Otpr
inner join flights_v fv2 on fv2.arrival_airport = rad.Pril
where fv.departure_airport_name != fv.arrival_airport_name 



Написала такой код, но получилась огромная таблица, где куча строк Пулково-Домодедово и arc 0. Понимаю, что где-то ошибка в логике.. Прошу помощи, я новичок.
...
Рейтинг: 0 / 0
Прошу помощи для расчёта расстояния между аэропортами из учебной базы Avia
    #40112437
bubuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Julia Not

Код: plsql
1.
2.
3.
4.
5.
with rad as(
select ... ad.airport_code as Otpr, ad2.airport_code as Pril 
from airports_data ad
inner join airports_data ad2 on ad.airport_code = ad2.airport_code
...





у Вас в запросе rad код аэропорта прилета всегда равен коду аэропорта отправления....
Наверное все-таки нужно таблицу flights_v соединять с (airports_data otpr) и (airports_data pril).

rad, flights_v fv2 - похоже лишние....
...
Рейтинг: 0 / 0
Прошу помощи для расчёта расстояния между аэропортами из учебной базы Avia
    #40112452
Guzya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если правильно помню, для этой бд есть задание на поиск всех пар аэропортов м\у которыми есть прямые перелеты, при этом Москва - Питер и Питер - Москва считаются за одно и то же.
Вот с начала сделайте эту табличку, а уже потом считайте расстояние.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Прошу помощи для расчёта расстояния между аэропортами из учебной базы Avia
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]