Tach!
noch besser Lösung, oder?
Das kommt drauf an, was dein eigentliches Ziel ist.
SELECT F_ID FROM table_f WHERE M_ID = 'x' UNION SELECT A_ID FROM table_a WHERE M_ID = 'x'
Diese Abfrage gibt alle Datensätze mit dieser ID. Wobei du in der Form nicht unterscheiden kannst, ob sie von f oder a kommen und auch nicht die Anzahl ermitteln kannst. UNION ohne ALL entfernt doppelte Ergebniszeilen. Das betrifft die Fälle, bei denen F_ID und A_ID gleich sind.
Auch ist da das entweder-oder (=XOR) der Fragestellung nicht drin, falls das überhaupt so gemeint war.
Wenn du mit der Abfrage dein Ziel erreichst, dann wüsste ich nicht, was dagegenspräche.
dedlfix.