Многостабильный sql-запрос

#sql

#sql

Вопрос:

Мне нужно создать запрос с несколькими таблицами для проекта для школы, но я не очень хорош в этом.

У меня есть 2 таблицы.

Первый — это таблица с объектами:

 departure_time (time)
arrival_time (time)
departure_id (int)
arrival_id (int)
  

Вторая таблица содержит названия местоположений:

 location_id (int)
name (varchar)
  

Мне нужен запрос, который получает departure_time , arrival_time и имена departure place и arrival place .

Ответ №1:

С внутренним соединением;

 select
  departure_time,
  arrival_time,
  depart.name,
  arrive.name
from trajects 
  inner join locations depart on (depart.location_id = trajects.departure_id)
  inner join locations arrive on (arrive.location_id = trajects.arrival_id)
  

Ответ №2:

 SELECT 
  t.departure_time, 
  t.arrival_time, 
  d.name as 'DeparturePlace', 
  a.name as 'ArrivalPlace'
FROM 
  Trajects t, Locations d, Locations a 
WHERE 
  t.departure_id = d.location_id AND 
  t.arrival_id = a.location_id
  

Ответ №3:

Что вам нужно было бы сделать, так это SQL-соединение для идентификаторов departure_id и arrival_id для второй таблицы. Подробности и примеры здесь.

Комментарии:

1. Спасибо, но проблема в том, что мне нужна 1 строка из первой таблицы и две строки из второй таблицы.

2. Объединение, подобное тому, которое я описываю, могло бы достичь этого. Не просто хотел написать запрос для вас, поскольку это звучит как домашняя работа.

3. Не волнуйтесь, проект намного больше этого.