添加

2017-08-07 18 views
0

我期待基於另一columnn存在列的方式找到添加

Table 1 
ColumnA ColumnB ColumnC 
    A  BN1 
    B  BN2 
    C  BN3 
    D  BN4 
    BN1  BN1   Min 
    BN1  BN1   Max 
    BN2  BN2   Mode 
    BN3  BN3   Avg 
    BN3  BN3   Mode 
    BN5  BN5   Avg 

我需要根據ColumnB(的不同值發現,當他們在列,這意味着不匹配,不同的值是隻有A的,ColumnA中的B,C和D),ColumnA中存在ColumnB的任何不同值,所以我應該知道ColumnA的ColumnC的值(應該根據ColumnB的不同值存在)。例如在這個BN4 does not存在ColumnA,所以我們忽略它。 BN5存在於ColumnA中,但ColumnB沒有它們(A,B,C,D),所以我們忽略它。

輸出應該有

Table 2 
ColumnD ColumnE ColumnF 

    BN1  BN1   Min 
    BN1  BN1   Max 
    BN2  BN2   Mode 
    BN3  BN3   Avg 
    BN3  BN3   Mode 

BN5在這種情況下被忽略。

+0

請上傳你想要的代碼 – Rominus

回答

0

試試這個

select * 
from table t 
where t.columnA in ('A','B','C','D) 
and t.columnB in (select distinct t1.columnB from table t1) 
and t.columnC in (select distinct t2.columnC from table t2) 
and t.columnD in (select distinct t3.columnD from table t3) 
and t.columnE in (select distinct t4.columnE from table t4)