2017-02-24 28 views
1

我知道許多人認爲我可以使用「連接」從兩個表中提取數據,但那不是我想要的。如何從堆棧中的2個表中提取數據

實際上它是一種問題對我來說,有可能拉像這裏這樣 我正在地名釋義數據: -

我有兩個表

+-------------------------------------+    +-------------------------------------+ 
|    Table 1    |    |    Table 2    | 
+-------------------------------------+    +-------------------------------------+ 
|id |vid| name | about  | rank |    |id |vid| title | description | rank | 
+-------------------------------------+    +-------------------------------------+ 
| 1 | a | dsa | Lorem ipsu | 0  |    | 1 | b | aa | Lorem ipsu | 0  | 
| 2 | a | asda | adipisicin | 0  |    | 2 | b | ss | adipisicin | 0  | 
| 3 | a | da | tempor inc | 0  |    | 3 | b | dd | tempor inc | 0  | 
| 4 | a | sad | dolore mag | 2  |    | 4 | b | rr | dolore mag | 2  | 
| 5 | a | fd | quis nostr | 1  |    | 5 | b | ggf | quis nostr | 2  | 
| 6 | a | rewr | ullamco la | 2  |    | 6 | b | ffdd | ullamco la | 1  | 
| 7 | a | ewrr | consequat. | 2  |    | 7 | b | df | consequat. | 1  | 
| 8 | a | dsa | reprehende | 1  |    | 8 | b | ddf | reprehende | 1  | 
| 9 | a | fffd | cillum dol | 1  |    | 9 | b | dfd | cillum dol | 1  | 
| 10| a | fsd | Excepteur | 1  |    | 10| b | df | Excepteur | 2  | 
+-------------------------------------+    | 11| b | dff | proident, | 2  | 
                | 12| b | trr | deserunt m | 2  | 
                +-------------------------------------+ 

我想拉從數據這兩個表,但不是我另一列使用連接像左或右連接有沒有什麼辦法拉動數據在一個新的行,我與排序排名desc或asc順序如果是的話幫助我。

這裏是結果,我想提前

+-----------------------------------------+ 
|    Result Table    | 
+-----------------------------------------+ 
| id | vid | name | about  |rank | 
+-----------------------------------------+ 
| 4 | b | rr | dolore mag | 2 | 
| 5 | b | ggf | quis nostr | 2 | 
| 10 | b | df | Excepteur | 2 | 
| 11 | b | dff | proident, | 2 | 
| 12 | b | trr | deserunt m | 2 | 
| 4 | a | sad | dolore mag | 2 | 
| 6 | a | rewr | ullamco la | 2 | 
| 7 | a | ewrr | consequat. | 2 | 
| 6 | b | ffdd | ullamco la | 1 | 
| 7 | b | df | consequat. | 1 | 
| 8 | b | ddf | reprehende | 1 | 
| 9 | b | dfd | cillum dol | 1 | 
| 5 | a | fd | quis nostr | 1 | 
| 8 | a | dsa | reprehende | 1 | 
| 9 | a | fffd | cillum dol | 1 | 
| 10 | a | fsd | Excepteur | 1 | 
| 1 | b | aa | Lorem ipsu | 0 | 
| 2 | b | ss | adipisicin | 0 | 
| 3 | b | dd | tempor inc | 0 | 
| 1 | a | dsa | Lorem ipsu | 0 | 
| 2 | a | asda | adipisicin | 0 | 
| 3 | a | da | tempor inc | 0 | 
+-----------------------------------------+ 

感謝。

+0

檢查mysql union如何工作。有了它,你將能夠獲得這樣的數據 – xurca

回答

1

嘗試使用union all和order by rankviddesc

SELECT id,vid,name,about,rank 
FROM(select id,vid,name,about,rank 
from table1 
UNION ALL 
select id,vid,title as name,description as about,rank 
from table2) t 
order by rank desc,vid desc 
1

試試這個:

select * from table1 
UNION 
select * from table2 
ORDER BY 5 DESC, 1 

這是直接從兩個表,並和訂單經柱#5降下來,列#1升