EJBQL命名查询-如何求和BigDecimal

问题描述 投票:1回答:2

我有一个代表钱的BigDecimal。我希望能够在NamedQuery中选择它的总和,但不会将BigDecimals求和。

@NamedQuery(name=Account.CALCULATE_TRANSACTIONS, query="SELECT SUM(a.credit) + SUM(a.debit) FROM Transaction a WHERE a.account.id = :accountId AND a.journalEntry.staged = false")

其中贷方和借方是BigDecimals。这行不通。除了将它们全部拉出,迭代它们并产生总计之外,最好的方法是这样做。我知道我可以做到,但是在可能的情况下寻找一种方法可以在一个查询中做到这一点。

谢谢!

java ejb sum bigdecimal named-query
2个回答
0
投票

0
投票
所以我在这里报告了同样的问题,我意识到只能在数字基元类型上使用SUM。例如shortintlongfloatdouble

SUM功能无法处理null

© www.soinside.com 2019 - 2024. All rights reserved.