在sql中排序完全连接的结果

TYS*_*TYS 0 sql oracle11g

我有两个表,我正在做一个完整的外连接.表有一个时间戳列.我希望通过时间戳排序连接的结果.比如表a有行

表A.

X           timestamp           
92408413    12/22/2011 11:23:36 AM  
92408414    12/22/2011 11:23:40 AM
92408417    12/22/2011 11:23:45 AM
92408419    12/22/2011 11:23:49 AM
92408423    12/22/2011 11:23:55 AM
92408424    12/22/2011 11:23:57 AM
92408426    12/22/2011 11:24:01 AM
92408427    12/22/2011 11:24:09 AM
92408430    12/22/2011 11:24:33 AM
92408435    12/22/2011 11:25:03 AM
92408437    12/22/2011 11:25:13 AM
92408497    12/22/2011 11:31:09 AM
92408498    12/22/2011 11:31:10 AM
92408499    12/22/2011 11:31:12 AM
Run Code Online (Sandbox Code Playgroud)

表B.

Y               X                timestamp
5020926963  92408430    12/22/2011 11:24:33 AM
5020926968  92408435    12/22/2011 11:25:03 AM
5020926970  92408435    12/22/2011 11:25:05 AM
5020926972  92408437    12/22/2011 11:25:14 AM
5020926981  -1      12/22/2011 11:31:09 AM
5020926982  -1      12/22/2011 11:31:10 AM
5020926984  92408499    12/22/2011 11:31:12 AM
Run Code Online (Sandbox Code Playgroud)

现在,如果我的查询看起来像

SELECT * 
FROM   tablea 
       FULL OUTER JOIN tableb 
         ON tablea.x = tableb.x 
            AND tablea.w = tableb.w 
WHERE  tablea.x = 'somevalue' 
        OR tableb.x = 'somevalue' 
ORDER  BY tablea.timestamp, 
          tableb.timestamp  
Run Code Online (Sandbox Code Playgroud)

查询的结果是:

92408413    12/22/2011 11:23:36 AM      
92408414    12/22/2011 11:23:40 AM      
92408417    12/22/2011 11:23:45 AM      
92408419    12/22/2011 11:23:49 AM      
92408423    12/22/2011 11:23:55 AM      
92408424    12/22/2011 11:23:57 AM      
92408426    12/22/2011 11:24:01 AM      
92408427    12/22/2011 11:24:09 AM      
92408430    12/22/2011 11:24:33 AM  5020926963  12/22/2011 11:24:33 AM
92408435    12/22/2011 11:25:03 AM  5020926968  12/22/2011 11:25:03 AM
92408435    12/22/2011 11:25:03 AM  5020926970  12/22/2011 11:25:05 AM
92408437    12/22/2011 11:25:13 AM  5020926972  12/22/2011 11:25:14 AM
92408497    12/22/2011 11:31:09 AM      
92408498    12/22/2011 11:31:10 AM      
92408499    12/22/2011 11:31:12 AM  5020926984  12/22/2011 11:31:12 AM
                                5020926981      12/22/2011 11:31:09 AM
                                5020926982  12/22/2011 11:31:10 AM
Run Code Online (Sandbox Code Playgroud)

现在,这个查询首先按TableA的tiemstamp和TableB的顺序排序.我希望结果按时间戳(按时间顺序)排序.所以基本上按(TableA.timestamp + TableB.timestamp)排序.如您所见,表A中有一行,其中时间戳为'92408497 12/22/2011 11:31:09 AM'我希望结果中的下一行有一个表B中的列,该列具有相同的时间戳' 5020926981 -1 12/22/2011 11:31:09 AM'

我在Oracle 11.2数据库上.

谢谢,

And*_*mar 9

order by coalesce (table1.timestamp, table2.timestamp)
Run Code Online (Sandbox Code Playgroud)