hqlクエリを実行しようとしています。文字型の列に集計関数を使用する
String SQL_QUERY = "SELECT SUM(quantity) as sum FROM SalesDetails sd";
Query query = session.createQuery(SQL_QUERY);
for(Iterator it=query.iterate();it.hasNext();)
{
int row = Integer.parseInt((String) it.next());
System.out.print("MAX QUANTITY: " + row);
}
モデルクラスで使用される「量」のデータ・タイプは、ストリングあります。しかし、クエリを実行しようとすると、エラーが発生します。
ERROR: ERROR: function sum(character varying) does not exist
Hint: No function matches the given name and argument types. You might need to add explicit type casts.
Position: 8
Exception in thread "main" org.hibernate.exception.SQLGrammarException: could not extract ResultSet
助けてください。 HibernateのString値に対してSUM関数を実行する方法を教えてください。前もって感謝します!
HQLクエリでネイティブSQL関数を使用しています。クエリの種類をNativeSqlQueryに変更するか、または休止状態を使用します。 – sAm
合計は数値、浮動小数点数、文字列には適用できません。保持するべきquanityフィールドとは何ですか?dbのどのような種類の列にマップされますか? – deepakl
データフィールド 'quantity'を数値型に変更してください! – JimmyB