我的要求是查询类似于以下内容:
SELECT * FROM table1
WHERE oid in (
SELECT * FROM table 2
WHERE condition )
我的问题是table1和table2在不同的数据库上。
我已经读过你可以做类似[db1] .table的事情,但在我使用Eclipse Birt环境的情况下它不起作用。
答案 0 :(得分:0)
您可以通过两种方式解决此问题:
1)使用类似数据库链接的东西。 MySQL的支持有限(注意:我几乎没用过MySQL)请参阅Oracle Database Link - MySQL Equivalent?。这样,您就可以将问题移到数据库级别。
2)根据实际问题(读取:“选择oid FROM table2 where condition”的长度,你可以使用BIRT数据立方体或
3)使用两个DataSet和一个布局结构列表表,如下所示:
两个DataSet需要不同的DataSource。
布局结构: *外部ListItem“T2_oids”绑定到DataSet“T2_oids” * Inner TableItem或ListItem“T1_object”绑定到DataSet“T1_object”,参数绑定到row [“oid”](或行[“OID”],使用列表框)。此项必须放在T2_oids详细信息部分内。
由于T1_object将返回单行,您甚至可以使用GridItem而不是TableItem或ListItem。