2012-12-16 177 views
4

我在MySQL中有两个表,在这两个表中我有id,标题,日期和一些其他字段,一个表的名称是news,另一个表是gallery从2个表中选择记录

Table news : 
    id | title | date  | ... 
    ------+----------+--------------+------- 
    1 | TestN 1 | 2012-12-12 | ... 
    2 | TestN 2 | 2012-12-14 | ... 
    3 | TestN 3 | 2012-12-14 | ... 



    Table gallery : 
    id | title | date  | ... 
    ------+----------+--------------+------- 
    1 | TestG 1 | 2012-12-10 | ... 
    2 | TestG 2 | 2012-12-12 | ... 
    3 | TestG 3 | 2012-12-15 | ... 

我想知道如何从两个表中按日期顺序选择标题记录?可能吗 ?

像这样:

Result : 
    id | title | date  | ... 
    ------+----------+--------------+------- 
    1 | TestG 1 | 2012-12-10 | ... 
    1 | TestN 1 | 2012-12-12 | ... 
    2 | TestG 2 | 2012-12-12 | ... 
    2 | TestN 2 | 2012-12-14 | ... 
    3 | TestN 3 | 2012-12-14 | ... 
    3 | TestG 3 | 2012-12-15 | ... 

回答

4

使用UNION

SELECT id, title, date FROM news 
UNION ALL 
SELECT id, title, date FROM gallery 
ORDER BY date, id, title 
0

为了实现这样的这种使用UNION子句....

SELECT id,title,date FROM news 
UNION 
SELECT id,title,date FROM gallery 
0

您可以使用下面的查询

SELECT id,title,date FROM news 
UNION All 
SELECT id,title,date FROM gallery 
ORDER BY date, id, title