Ich würde vermuten, dass das UNION schneller ist.
OR-Verknüpfungen sind meist sowieso schon langsamer und eine Sortierung nach einer berechneten "Spalte" kostet nochmal Zeit..
Wenn es um eine zeitkritische Abfrage geht, würde ich mir die Mühe machen und eine große Testtabelle erzeugen.. Sowas >1Mio Datensätze kann MySQL schon ordentlich zum Schwitzen bringen
Manchmal kommen bei "zu wenigen" Datensätzen auch unzuverlässige Ergebnisse, also dann scheint es so, als wäre die eine Abfrage schneller, bei vielen Datensätzen ist diese Abfrage aber dann gähnend langsam.