@ZmeuSnake

Как правильно написать sql-запрос?

В бд есть 2 таблицы. Первая "Города" с полями:
- id
- имя_города

Вторая "Маршруты" с полями:
- имя_маршрута
- id_пункта_отправления
- id_пункта_назначения

Как создать запрос, который бы выводил такую таблицу?
- имя_маршрута
- город_отправления
- город_назначения
  • Вопрос задан
  • 220 просмотров
Решения вопроса 4
k1lex
@k1lex
Программист торг. сети. C# (WPF, WinForms), T-SQL
select 
 M.имя_маршрута
,G.имя_города 
,G2.имя_города
from Маршруты M 
inner join Города G ON  M.id_пункта_отправления=G.ID
inner join Города G2  ON  M.id_пункта_назначения=G2.ID
Ответ написан
Комментировать
@mletov
SELECT marshrutes.name,
t1.name AS cityFrom,
t2.name AS cityTo
FROM  marshrutes

LEFT JOIN city AS t1
ON marshrutes.city1=t1.id

LEFT JOIN city AS t2
ON marshrutes.city2=t2.id
Ответ написан
Комментировать
select route.name, departure_city.name, arrival_city.name
from
    route
    join city departure_city on route.departure_city_id = departure_city.id
    join city arrival_city on route.arrival_city_id = arrival_city.id
Ответ написан
Комментировать
select 
  routes.name as route, 
  cityfrom.name as cityfrom, 
  cityto.name as cityto 
from routes 
  left join cities cityfrom on routes.from_id = cityfrom.id
  left join cities cityto on routes.to_id = cityto.id

примерно так
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы