Hallo
mit union habe ich mich bisher nicht weiter befasst... da alles was ich bislang über sql-optimziation von union abrät... gibt wohl nur wenige fälle wo das wirklich was bringt... 2 geteilte queries sind (laut buch) zu 70% aller fälle schneller als so ein union dings
Was nutzen Dir zwei geteilte Ergebnisse, wenn Du nur ein gemeinsames benötigst? Da liegt doch die Krux. Bringe diese beiden Ergebnisse zusammen.
In diesem speziellen Fall mit den starken Einschränkungen über die WHERE-Klauseln sollten die Ergebnismengen beider Abfragen sehr klein und UNION somit sehr performant sein.
Zusätzlich empfiehlt MySQL sogar die Verwendung von UNION als effizientes Mittel in speziellen Fällen, siehe http://dev.mysql.com/doc/refman/5.0/en/searching-on-two-keys.html. Ich wüsste nicht, was in Eddies Fall gegen UNION spricht, es sei denn die MySQL-Version.
Freundliche Grüße
Vinzenz