2015-04-17 49 views
-1

我有2個表格,我需要從中提取數據並且他們沒有公共數據。這是兩個表的例子。SQL - 從不同列表中選擇不包含公共列的列

Eg1和Ie1是列名稱的示例。

asd和afd是數據的示例。

表1

Eg1 | Eg2 | Eg3 | Eg4 | Eg5 
asd | wer | weq | qwe | wtp 

表2

Ie1 | Ie2 | Ie3 | Ie4 | Ie5 
afd | ehd | xva | nbv | sdf 
  1. 我怎樣才能檢索到EG2和IE2數據,並通過邊把他們的一面呢?

進出料放會 -

Eg2 | Ie2 
wer | ehd 
  • 如何從同一個表中檢索相同的數據兩次? (示例輸出將顯示IE3的2列)
  • 問題的這部分應該使用別名來解決

    預計產出將是(?) -

    Ie3 | Ie3 
    xva | xva 
    
    +0

    什麼是例一等?列名?請顯示每個樣本的數據和預期的輸出。如果他們沒有關係,你怎麼能期望加入他們? – OldProgrammer

    +0

    @OldProgrammer是他們的列名。我的想法正是這樣,我被這兩張桌子拋出,我期望的輸出基本上是我被告知要做的。困惑。 – blitz

    +0

    您使用的是什麼DBMS? –

    回答

    1

    你可以這樣做:

    SELECT 
        EG1, 
        IE1 
    FROM TABLE1, 
        TABLE2 
    

    這將導致兩個的每一個可能的組合,在這個SQLFiddle

    而對於第二部分使用看出

    SELECT 
        IE3, 
        IE3 
    FROM TABLE2 
    
    1

    可以肯定的是選擇它們,但它將取決於數據在數據庫中的方式,而且您無法真正瞭解最終結果行將包含的內容。

    SELECT a.Eg2,b.Ie2 FROM a,b 
    

    a和b是你的表名。

    而且

    SELECT b.Ie3,b.Ie3 
        FROM b 
    

    是有效的爲好。

    +0

    作爲@ Java-Devil指出這**這將導致兩個**的每種可能的組合都將發生。 – Andrei

    相關問題