Java Spring数据jpa无法在db2的本机子查询中传递命名参数

Java Spring数据jpa无法在db2的本机子查询中传递命名参数,java,spring-boot,spring-data-jpa,db2,Java,Spring Boot,Spring Data Jpa,Db2,无法在spring数据jpa中的@namedNativeRequesty中传递命名参数 我的回购协议: @Query(value = "select stat.desc as desc," + " stat.priority as priority," + " (case when sum(activeUser) is null then 0 else sum(activeUser) end) as activeUser," + " (case when su

无法在spring数据jpa中的
@namedNativeRequesty
中传递命名参数

我的回购协议:

   @Query(value = "select stat.desc as desc," + 
    " stat.priority as priority," + 
    " (case when sum(activeUser) is null then 0 else sum(activeUser) end) as activeUser," + 
    " (case when sum(totalUser) is null then 0 else sum(totalUser) end) as totalUser" + 
    " from lookup.user stat left outer join" + 
    " (" + 
    " select user.role as role, " + 
    " sum (case when user.STATUS = 'ACTIVE' then 1 else 0 end) as activeUser," + 
    " count(*) as totalUser," + 
    " user.group as group" + 
    " from Ctrl.user user" + 
    " where user.group =:userGroup " + 
    " and user.branch_code =:branchCode " + 
    " group by user.role,user.group" + 
    " ) as tbl on stat.role = tbl.role and stat.group = tbl.group" + 
    " where stat.group =:userGroup " + 
    " group by stat.desc, stat.priority" + 
    "", nativeQuery = true)
    public List<com.cimb.dto.UserStatusSummary> getSummaryReport(@Param(value = "userGroup") String userGroup, @Param(value = "branchCode") String branchCode);
如果我用值硬编码那些命名参数,那么它就工作了

我不能使用
jpql
,因为实际查询中有一些子查询,所以我不能使用
jpql

编辑更新

经过一些挖掘,我发现,我传递的参数在子查询中,因为
JPA
没有子查询概念,它没有注入到命名参数中,从而导致语法错误

现在,如何在
JPA


请帮忙

价值观是什么?那么带有文字的版本是什么样子的呢?
branch\u code
group
列的数据类型是什么?@jenschauder值只是像
1233wfee
这样的普通字符串,“TBM”数据类型是
varchar
,对于这两个列,为什么有人想关闭此问题信息不足以重现此问题?那么请让我知道。@Jenschauder您好,我已经找到了它不工作的原因,如果您看到我的查询,我在其中有一个子查询,并且我正在向该子查询传递两个参数,因为
jpa
没有子查询概念,它未能将这些参数注入子查询,导致
DB2错误代码-302
,现在我不知道如何将参数传递给子查询。我对此表示怀疑。JPQL没有子查询,但这将导致另一个错误。这里还有本机查询,因此SQL/JDBC是相关的,这将是一个“有趣”的bug。
   DB2 SQL Error: SQLCODE=-302, SQLSTATE=22001, SQLERRMC=null, DRIVER=4.25.13