与JPA CriteriaBuilder一起使用All All和Sum

use*_*956 6 union jpa sum criteria-api

我试图转换本机SQL查询以使用JPA 2.0中的Criteria API.我在Google上发现了很多Criteria API示例,但我很难将所有部分放在一起.我希望有经验的人能够帮助我.本机查询如下所示:

select 
    sum(amount) from firstTable, secondTable 
        where firstTable.id = secondTable.id 
            and amount <> 0 
            and firstTable.id = ?
union all
select 
    sum(amount) from firstTable, thirdTable 
        where firstTable.id = thirdTable.id 
            and amount <> 0 
            and firstTable.id = ?
Run Code Online (Sandbox Code Playgroud)

原始查询结果集返回一个BigDecimal对象列表.

谢谢!

Jam*_*mes 10

JPA不支持UNION,要么使用本机SQL查询,要么执行两个查询.

  • EclipseLink支持UNION http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Basic_JPA_Development/Querying/JPQL#UNION (2认同)