2014-04-14 245 views
0

我需要根據此數據表模式創建一個新表。 我不確定我是否可以使用嵌套的sql select語句或其他方式來做到這一點。SQL嵌套選擇語句;

screenshot

+4

您可以通過編寫SQL語句開始。你有什麼嘗試? –

+0

是的,我已經嘗試了多次。我正在處理DB2 IBM AS400服務器查詢,有時會變得混亂。對不起,沒有提到。 – woooooot

回答

2
select ColA, ColB, ColC, ColD, (select ColE from table where colA=120) ColE 
from table 
where colA = 122 

只需使用嵌套選擇科爾和給予的別名列。

+0

如果'colA'在多行中取值120,這將失敗。誠然,OP沒有說在這種情況下該怎麼做。 –

+0

我想他是這樣工作的,因爲ColA是PK,但是如果不是,他總是可以加上:AND ROWNUM = 1; – iFrey

0

如果ColA中有多個值,則您沒有聲明查找ColE的條件。我假設(根據你的表格)你想要最小的價值?

select min(ColE) 
from table 
where ColA=120 
group by ColA; 

現在使用上面你可以創建一個嵌套查詢

select ColC, ColB, ColC,ColD , minColE 
from table, (
    select min(ColE) as minColE 
    from table 
    where ColA=120 
    group by ColA 
) as TblA 
where ColA=122;