如何将内部查询值传递给外部查询以在sql中的查询中使用?

时间:2015-06-25 20:12:39

标签: sql oracle-sqldeveloper inner-query

我需要从ASSET表中获取一条记录,但我只有父资产nn才能找到我需要的条目。有两个条目具有相同的assetnum,但其中一个条目的父级填充了父资产的值我有,有一个没有。我需要获取没有填充父字段的记录。我想我可以得到一个填充了父字段的条目,得到它的assetnum然后使用该assetnum再次查询表,但这次添加“parent is null”并检索我希望谁的父字段为空的记录。到目前为止我有:

    select assetnum from asset where assetnum in(select assetnum from asset where parent = (parentassetnum) and siteid=(siteid))and parent is null

所以在这个查询中我希望从内部查询中抢夺该assetnum并在我的外部查询中使用它。那个内部查询只返回一条记录,我认为发生的事情是我的外部查询是针对内部查询的结果查询的,而不是使用assetnum作为自己的外部查询。我想在SQL中做什么?

先谢谢你的帮助。 WANN

1 个答案:

答案 0 :(得分:0)

在我看来,如果你将“in”更改为=符号,它应该有用。

SELECT assetnum
来自资产
WHERE assetnum = (SELECT assetnum FROM asset WHERE parent =(parentassetnum)AND siteid =(siteid))
AND AND IS NULL