2013-07-18 19 views
0

我有两个表'分钟'的列。 这些表与INNER JOIN连接。 现在我想打印出来,从分类上都列“分钟”从不同表中排序记录

示例两个表中的所有记录

表1:名称 - 分钟

John - 1 
Marc - 3 

表2:名称 - 分钟

Gareth - 2 
Joe - 3 

输出:

John, Gareth, Marc, Joe 

这两个表格必须保留两个单独的表格。

+0

您可以检查http://stackoverflow.com/questions/4069784/order-by-in-inner-join – sujikin

回答

5

您应该使用UNION: -

(SELECT * 
FROM table1) 
    UNION 
(SELECT * 
FROM table2) 

ORDER BY minute ASC 

输出: -

john 1 
gareth 2 
marc 3 
joe  3 
-1

不知道这是你在找什么

SELECT name, minute FROM table1, table2 ORDER BY table1.minute,table2.minute ASC; 
+0

连接条件? –

+0

这不会工作它会抛出一个错误 – Prabhuram

+0

没想到如果你使用了一个连接,你将能够获得两个名称字段,如果他们都被称为连接 –

0

试试这个:

Select name 
From table1 
Union all 
Select name 
From table2 
order by minute 
2

试试这个

SELECT name 
FROM 
(
    SELECT name, [minute],1 AS sort FROM Table1 
    UNION ALL 
    SELECT name, [minute],2 AS sort FROM Table2 
) T 
ORDER BY [minute],sort 

输出

name minute 
John 1 
Gareth 2 
Marc 3 
Joe  3 

OR

SELECT name, [minute] 
FROM 
(
    SELECT name, [minute] FROM Table1 
    UNION ALL 
    SELECT name, [minute] FROM Table2 
) T 
ORDER BY [minute] 

输出

name minute 
John 1 
Gareth 2 
Joe  3 
Marc 3