Mijn oplossing voor dit probleem:ik heb het probleem in tweeën gedeeld.
Nu zullen zowel tabel S als E gemeenschappelijke routes hebben, en ik krijg al deze gemeenschappelijke routes door deel te nemen aan de subquery's, met behulp van de id's van elke tabel. Omdat er dubbele routes zijn (hetzelfde:S.num, S.company, stops.name, E.num, E.company) ik heb DISTINCT gebruikt.
SELECT DISTINCT S.num, S.company, stops.name, E.num, E.company
FROM
(SELECT a.company, a.num, b.stop
FROM route a JOIN route b ON (a.company=b.company AND a.num=b.num)
WHERE a.stop=(SELECT id FROM stops WHERE name= 'Craiglockhart')
)S
JOIN
(SELECT a.company, a.num, b.stop
FROM route a JOIN route b ON (a.company=b.company AND a.num=b.num)
WHERE a.stop=(SELECT id FROM stops WHERE name= 'Sighthill')
)E
ON (S.stop = E.stop)
JOIN stops ON(stops.id = S.stop)