Hallo!
Ist es möglich, die Ergebnisse einer Subquery mit in die Ergebnisse der gesamten Abfrage reinzunehmen? So wie ein UNION über 2 Abfragen?
Hintergrund ist folgender:
Ich habe eine Query, die zwar macht, was sie soll, aber sie ist wahrscheinlich sehr unnötig umständlich geschrieben und liest Daten doppelt aus.
Die Query sieht folgendermaßen aus:
SELECT p.name FROM place_transitions AS pt
INNER JOIN places AS p ON p.id = pt.pid_to
WHERE pt.pid_from = *num*
UNION SELECT pa.alt from place_alternatives AS pa
WHERE pa.pid IN
(SELECT p.id FROM place_transitions AS pt
INNER JOIN places AS p ON p.id = pt.pid_to
WHERE pt.pid_from = *num*)
Das fett gedruckte steht ja blöderweise zweimal da. Ich bin mir sicher, dass es eine einfachere und schnellere Lösung gibt.
Kann hier jemand was zu sagen?
Vielen Dank und
freundliche Grüße
Christoph
Ist es möglich, die Ergebnisse einer Subquery mit in die Ergebnisse der gesamten Abfrage reinzunehmen? So wie ein UNION über 2 Abfragen?
Hintergrund ist folgender:
Ich habe eine Query, die zwar macht, was sie soll, aber sie ist wahrscheinlich sehr unnötig umständlich geschrieben und liest Daten doppelt aus.
Die Query sieht folgendermaßen aus:
SELECT p.name FROM place_transitions AS pt
INNER JOIN places AS p ON p.id = pt.pid_to
WHERE pt.pid_from = *num*
UNION SELECT pa.alt from place_alternatives AS pa
WHERE pa.pid IN
(SELECT p.id FROM place_transitions AS pt
INNER JOIN places AS p ON p.id = pt.pid_to
WHERE pt.pid_from = *num*)
Das fett gedruckte steht ja blöderweise zweimal da. Ich bin mir sicher, dass es eine einfachere und schnellere Lösung gibt.
Kann hier jemand was zu sagen?
Vielen Dank und
freundliche Grüße
Christoph