2014-01-30 49 views
0

嗨,我很新,所以對不起我,如果不解釋這一點。加入2選擇結果 - 同時設置多個聯盟

我有2個表(委託和模塊)都與列的名字,如被反覆

什麼我試圖acheive是得到了4代表的結果,「沒有」和「名」。

我的繼承人編碼:

SELECT no AS del_no, name AS del_name 
FROM delegate 

Union ALL 

SELECT code AS module_code, name AS module_name 
FROM module; 

我的結果是兩列,一切從下方堆疊模塊 但我真正想要的是2頁不同的表4個colums。

我無法更改列名,因爲這符合我的要求。

+0

你的委託和模塊表之間的關係是什麼? – user2989408

+0

http://tinypic.com/r/k9cojk/8 – user3254111

+0

你的頭銜是錯的我想,你沒有加入這裏你是工會。 – Hogan

回答

0

有兩種方法可以做到這一點,在你第一次合併結果到共享列像這樣

select t, shared, name from 
(
    SELECT 1 as ordering, 'del_no' as t, no AS shared, name FROM delegate 
    Union ALL 
    SELECT 2 as ordering, 'module' as t, code AS shared, name FROM module 
) sub 
order by ordering asc 

在第二每種數據類型被它自己的列

select del_name, module_name, name from 
(
    SELECT 1 as ordering, no as del_name, null as module_name, name FROM delegate 
    Union ALL 
    SELECT 2 as ordering, null as del_name, code as module_name, name FROM module 
) sub 
order by ordering asc 

在這兩種情況的關鍵是有一列只用於外部查詢中的排序。

+0

第一個工程,但我得到了錯誤的結果,第二個得到 – user3254111

+0

「未知colum'噸字段列表 – user3254111

+0

我修好了第二個...第一個錯誤是怎麼回事? – Hogan