我有例如第一个查询:(ararnr =文章编号)
Select ararnr,ararir,aoarom from ar left join ao ON AR.ARARNR=AO.AOARNR WHERE AR.ARARKD=1389
第二个查询使用第一个查询中第一列的结果在另一个表中搜索</ p>
Select votgan, sum(ststan) as totalStock from vo INNER JOIN st on vo.voarnr=st.starnr where voarnr = ararnr
我怎么能把两者结合起来?
请注意:并非所有第一个查询中的文章编号都会在第二个查询中找到,但我在结果中需要它们。
在结果中我需要两个查询中的列。
修改
例如:
第一个查询返回文章编号和描述:
+---------+--------------+ | ararnr | aoarom | +---------+--------------+ | a123456 | description1 | | b123456 | description2 | | 0123456 | description3 | +---------+--------------+
第二个查询返回这些文章的总库存:
+---------+--------------+ | ararnr | totalstock | +---------+--------------+ | a123456 | 12 | | b123456 | | | 0123456 | 6 | +---------+--------------+
注意第二个不返回值,因为此表中不存在articlenumber。
在我的结果中,我想获得带有相应描述和库存的文章编号。
+---------+--------------+-----------+---------+ | ararnr | aoarom | totalStock| vovoan | +---------+--------------+-----------+---------+ | a123456 | description1 | 12 | 2 | | b123456 | description2 | | 1 | | 0123456 | description3 | 6 | | +---------+--------------+-----------+---------+
我在 db2
上使用sql第二次编辑
第一个查询将从表 ar 中选择一些商品编号(ararnr),并在另一个表 ao 中找到相应的描述(aoarom)。
第二个查询从第一个查询中找到的文章编号的两个差异表 vo 和 st 中查找股票(vovoan和sum ststan)。
结果应该具有相应描述的商品编号以及来自vo和st
的相应库存答案 0 :(得分:1)
我无法完全理解你的要求,但另一个加入可能会对你有所帮助。
示例:
SELECT ar.ararnr, ar.ararir, ar.ararom, vo.votgan, SUM(vo.ststan) as totalStock
FROM ar LEFT JOIN ao ON [id=id] LEFT JOIN vo ON [id=id]
因为我不知道你的桌子结构是什么,或者你真正要求的是什么,这是我能给你的最好的回应。
这也可能是您正在寻找的: Combining 2 SQL queries and getting result set in one
答案 1 :(得分:0)
如果要发布表结构和所需结果,你会得到更完整的答案,但是......
您可以将第一个查询用作第二个查询的结果集,然后加入该查询。类似的东西:
Select
votgan,
sum(ststan) as totalStock
from vo
inner join (Select
ararnr,
ararir,
ararom
from ar
left join ao .....) z on vo.voarnr = z.ararnr
编辑:
Select
votgan,
sum(ststan) as totalStock,
z.ararnr,
z.aoarom
from vo
inner join (Select
ararnr,
ararir,
ararom
from ar
left join ao .....) z on vo.voarnr = z.ararnr
答案 2 :(得分:0)
您可以使用此查询。
SELECT ar.ararnr, ar.ararir, ar.ararom, vo.votgan, SUM(vo.ststan) as totalStock
FROM ar
LEFT JOIN ao ON ao.ararnr = ar.ararnr
LEFT JOIN vo ON vo.voarnr = ao.ararnr
答案 3 :(得分:0)
如果您使用SQL Server作为数据库,则可以在F9 (the sheet name): 'Data BBG'!
F10 (column letter): I
F12 (starting row): 1298
F11 (ending row): 1223
E4 (threshold number): 25
OUTER APPLY