MySQL Union Query, Reihenfolge nach 2 Variablen

Jede Tabelle (Tabelle1 & Tabelle2) hat ein eigenes DATETIME-Feld.
Ich versuche, IDs der beiden Tabellen zu finden und sie nach ihrem DATETIME-Feld zu ordnen.

Beispiel

Table 1                        Table 2
------------                 -------------
id |  datetime1               id | table1id  | datetime2
------------------------      -----------------------
1  |  2014-09-21 20:31:26     1  | 2         | 2014-09-21 20:31:29
2  |  2014-09-21 20:31:27     2  | 3         | 2014-09-21 20:31:30
3  |  2014-09-21 20:31:28

Table 3                      
------------               
id |  user               
------------------------   
2  |  phil                
3  |  nathalie

Meine Ausgabe ist mit dieser Abfrage nicht richtig sortiert:

SELECT *
FROM (
    SELECT 
    1 AS selection, 
    table1.id, table1.datetime1, 
    table2.datetime2 
    table3.user 
    FROM Table1 
    LEFT OUTER JOIN table2 
    ON table1.id = table2.table1id
    LEFT OUTER JOIN table3
    ON table1.id = table3.id

    UNION ALL

    SELECT 
    2 AS selection, 
    table1.id, table1.datetime1, 
    table2.datetime2 
    table3.user 
    FROM Table1 
    INNER JOIN table2 
    ON table1.id = table2.table1id
    INNER JOIN table3
    ON table1.id = table3.id
) AS query
ORDER BY table1.datetime1 DESC, table2.datetime2 DESC 

Gewünschte Daten:
von Tabelle 2 id: 2, 1,
von Tabelle 1 id: 3, 2, 1
So: 2, 1, 3, 2, 1

////BEARBEITE

Für Leute, die mit langen und komplexen MySQL-Anfragen zu kämpfen haben, versuchen Sie es bitte in PhpmyAdmin! Es wird Ihnen den Fehler mitteilen!

////BEARBEITE

Antworten auf die Frage(2)

Ihre Antwort auf die Frage