2016-09-07 10 views
0

に結果を持つクエリのJOIN私は2つのMySQLのテーブルMySQLは複数の行

を持って

tbl_user

user_id | user_name 
1  | John 
2  | Kevin 
は以下
admin_id | admin_name 
1  | Bob 

SELECT `tbl_user`.`user_id` as `ID`, `tbl_user`.`user_name` as `NAME`, 
`tbl_admin`.`admin_id` as `ID`, `tbl_admin`.`admin_name` as `NAME` 
FROM `tbl_admin` INNER JOIN `tbl_user` ORDER BY `tbl_user`.`creation_date` DESC 

tbl_admin

私の上記のクエリからの結果である

ID | NAME | ID | NAME 
1 | John | 1 | Bob 
2 | Kevin | 1 | Bob 

私は各テーブルに別々のクエリを記述しますが、その場合、表1の結果は、第1および表2の結果をロードしますが、私の目標は、両方TABLE結果を得ることであるにできるフォーマット以下

ID | NAME | 
1 | John | 
1 | Bob | 
2 | Kevin | 

に結果が欲しいですIDまたは日付による単一の照会ORDER。

答えて

3

使用UNION ALL

(SELECT user_id AS Id 
    , user_name AS Name 
    FROM tbl_user) 

UNION ALL 

(SELECT admin_id 
    , admin_name 
    FROM tbl_admin) 

ORDER BY Id; 
+1

スーパークエリは冗長です。 – Strawberry

+0

私の答えを更新しました。ありがとう@ストロベリー – KaeL

+0

...かっこは – Strawberry

0
SELECT 
     user_id as Id, user_name as Name 
     tbl_user 

     UNION 

    SELECT admin_id 
     , admin_name 
     FROM tbl_admin 

    ORDER BY Id; 

使用UNION