2014-04-14 210 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;