2012-12-13 2 views
1

나는 돈을 나타내는 BigDecimal을 가졌다. NamedQuery에서 그 합을 선택할 수 있기를 원하지만 BigDecimals를 더하지 않습니다.EJBQL 명명 된 쿼리 - BigDecimal을 더하는 방법

@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") 

여기에서 신용 및 차변은 BigDecimal입니다. 이것은 작동하지 않습니다. 이 모든 작업을 수행하고 반복하여 전체 작업을 수행하는 것 이외에는이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 가능하다면 하나의 쿼리에서 수행 할 수있는 방법을 찾고 있지만 할 수 있다는 것을 알고 있습니다.

감사합니다.

+0

Criteria API를 사용해 볼 수 있습니다. –

답변

0

그냥 업데이트/답변. 내가 조사한 모든 것에서 이것은 EJBQL3에서는 불가능합니다. 명명 된 쿼리의 범위를 벗어나이를 수행해야했습니다.