1

私はEclipselink 2.2.1.v20110722-r9776を使用しています

次のクエリがあります。

TypedQuery<FundMasterDTO> secQuery = em.createQuery("SELECT new com.dto.FundMasterDTO("+" sum(appAmount), sum(redemptionPrice) from security", FundMasterDTO.class);

次のエラーが表示されます。

Exception Description: Syntax error parsing the query [SELECT new com.dto.FundMasterDTO( sum(app_amount), sum(redemption_price) from security], line 1, column 80: syntax error at [from].

Internal Exception: MissingTokenException(inserted [@-1,0:0='<missing RIGHT_ROUND_BRACKET>',<84>,1:80] at from); nested exception is java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 

集計関数 SUM を使用しない場合は、すべてうまく機能します。コンストラクターを削除すると、リストが返されます。

4

1 に答える 1

0

メッセージにあるように、右丸括弧がありません:

SELECT new com.dto.FundMasterDTO( sum(app_amount), sum(redemption_price)) ...
                                                two parentheses here ---^
于 2012-11-29T12:23:14.397 に答える