在Birt中,我可以将一个数据集的结果作为输入传递给另一个数据集

时间:2014-03-26 13:14:36

标签: sql oracle birt

这可能不是Birt问题,可以用SQL本身解决。请在下面找到我的问题。

我有一个复杂的查询,6个与联合和交叉连接的小查询。所有小查询都有一个共同的内部查询。现在将其作为查询的一部分编写将运行此内部查询6次,我想避免。我想将此内部查询的值直接传递给Main查询。

主查询模板如下所示。

Select A_ID id from A where A.TYPE in (select Type from My_Type_List where Type_id=?)
UNION
Select B_ID id from B where B.TYPE in (select Type from MY_TYPE_LIST where Type_id=?)
UNION
Select C_ID id from C where C.TYPE in (select Type from MY_TYPE_LIST where Type_id=?)

是否有办法优化此查询或将内部查询的值作为参数传递给主数据集。

1 个答案:

答案 0 :(得分:1)

一般方法是运行第一个查询并在全局JavaScript对象中收集结果。

然后,您可以使用JavaScript在其他地方重用这些元素。

唯一的选择是在第二个查询中使用内连接。