簡體   English   中英

MySql按日期對2個或更多表進行排序

[英]MySql Sorting columns from 2 or more tables by date

我有以下表格:

comments:
id   /   comments    /   date
1        comment1     1389986953
2        comment2     1389986935


topics:
id   /   topics    /   date
1        topic1      1389986930
2        topic2      1389986940

如何從兩個表中選擇所有行並按日期對它們進行排序? 因此它看起來像:

topic1
comment2
topic2
comment1

嘗試一個SELECT UNION

參考: http : //dev.mysql.com/doc/refman/5.0/en/union.html

(SELECT comments AS col, date FROM comments)
UNION
(SELECT topics AS col, date FROM topics)
ORDER BY date;

您將要使用UNION ALL合並兩個表的結果,然后將其包裝以進行排序。

SELECT a.type 
FROM   (SELECT comments AS type, 
               date 
        FROM   comments 
        UNION ALL 
        SELECT topics, 
               date 
        FROM   topics) a 
ORDER  BY a.date; 
SELECT * FROM
    (SELECT comments AS mergedField, date
    FROM comments
    UNION ALL
    SELECT topics, date
    FROM topics) mergeTable
ORDER BY date ASC

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM