2017-02-24 7 views
1

多くの人が2つのテーブルからデータを引き出すために「結合」を使うことができると思っています。スタック内の2つのテーブルからデータを取り出す方法

実際にそれが私への質問のようなものであるが、ここではこのよう ようなデータを取得することが可能である私はexplaningています: -

私は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  | 
                +-------------------------------------+ 

を持っている私はからデータを取得したいですどちらのテーブルでも、別の列は左または右ジョインのようにジョインを使用していますが、新しい行のデータを引き出す方法はありません。ここ

は私が事前に

+-----------------------------------------+ 
|    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及び順序によって注文とviddesc

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 

これは、両方のテーブルからプル、およびrankによるカラム#5下降、および列#1昇順

関連する問題