Jasper reports 如何在JasperReport数据集定义的where子句中使用subselect?

Jasper reports 如何在JasperReport数据集定义的where子句中使用subselect?,jasper-reports,jaspersoft-studio,Jasper Reports,Jaspersoft Studio,我尝试在JasperSoft报告(JasperSoft Studio V 5.6)中定义一个数据集,该数据集使用具有如下参数的subselect: SELECT id, value FROM foo WHERE id IN (SELECT id FROM bar WHERE user=$P{USER_PARAM}) SELECT语句的SELECT被注释为错误消息“输入时没有可行的替代方案”SELECT' SQL语句可以使用简单的数据库工具执行,因此der JasperReports语法中必须

我尝试在JasperSoft报告(JasperSoft Studio V 5.6)中定义一个数据集,该数据集使用具有如下参数的subselect:

SELECT id, value FROM foo WHERE id IN (SELECT id FROM bar WHERE user=$P{USER_PARAM})
SELECT语句的SELECT被注释为错误消息
“输入时没有可行的替代方案”SELECT'

SQL语句可以使用简单的数据库工具执行,因此der JasperReports语法中必须有一些特殊的内容


对于如何在JasperSoft中实现我的用例的任何信息,我表示感谢。如果不支持subselect,建议使用什么方法来定义查询?

在Jaspersoft Studio中使用subselect语句时,它将通过您提到的错误。但是,如果您忽略错误并单击“读取字段”,它将读取您的列字段,并且当您在报告中使用它时,就会得到结果


我已经测试了这个,它的工作

你试过用$p吗!{USER_PARAM}(即使用带感叹号的变量)@FrVaBe子选择受JasperReports$P支持!没什么区别。问题在于嵌套选择(请参见我的屏幕截图,不使用参数)。我确信JasperReports支持子选择,但我一定是做错了。@FrVaBe您是否试图忽略GUI警告并测试报告?您是否尝试使用iReport?