У меня есть таблицы Connection и Location со следующими столбцами:
Connection:
LocationIDFrom
LocationIDTo
Duration
Location:
LocationID
LocationName
Примеры записей следующие: Соединение:
1, 2, 3ms
2, 1, 5ms
1, 5, 12ms
3, 2, 2ms
Местоположение:
1, New York
2, Boston
3 Los Angeles
Я хотел отобразить таблицу со столбцами LocationFrom, LocationTo, Duration.Примером приведенных выше записей будет
New York, Boston, 3ms
Boston, New York, 5ms
Los Angeles, Boston, 2ms
. Я попытался использовать следующий запрос
SELECT l1.LocationName AS LocationFrom, l2.LocationName AS LocationTo, c.Duration
FROM Connection c
INNER JOIN Location l1 ON l1.LocationID= c.LocationIDFrom
INNER JOIN Location l2 ON l2.LocationID= c.LocationIDTo
, но результат был неполным;пропали строки, данные о местоположении которых были сохранены в таблице Location как для LocationIDFrom, так и для LocationIDTo.
Кто-нибудь знает, как изменить приведенный выше запрос или написать правильный, который возвращает таблицу с именами местоположений, которые должны быть полученыиз той же таблицы для LocationFrom и LocationTo вместо идентификаторов?
Здесь Я нашел решение для аналогичной проблемы, но не знаю, почему принцип не работает для проблемы, описанной выше.