我的查詢是這樣的:JPQL是否支持查詢中相同字段的SUM和算術函數?
select sum(m.value * m.currency) from bill m
它失敗,給了我這樣的例外:
java.lang.IllegalArgumentException異常:異常說明:雖然在 EntityManager的創建查詢時出現異常的語法錯誤 解析[*]處的查詢語法錯誤。
我正在使用eclipselink。
我的查詢是這樣的:JPQL是否支持查詢中相同字段的SUM和算術函數?
select sum(m.value * m.currency) from bill m
它失敗,給了我這樣的例外:
java.lang.IllegalArgumentException異常:異常說明:雖然在 EntityManager的創建查詢時出現異常的語法錯誤 解析[*]處的查詢語法錯誤。
我正在使用eclipselink。
規格的SUM表達式定義爲如下:
aggregate_expression ::=
{ AVG | MAX | MIN | SUM } ([DISTINCT] state_field_path_expression) |
COUNT ([DISTINCT] identification_variable | state_field_path_expression |
single_valued_object_path_expression)
所以,不,你的查詢是無效的JPQL。 HQL(Hibernate JPQL變體)支持它。
該查詢應該在最新的EclipseLink版本(或最可能的2.2之後的任何東西)中受支持。你使用什麼版本?