9
単一値をスカラーデータ型にマップするJPAのサポートはありますか?例えば、いくつかの変数JPAを使用して単一の値を取得していますか?
int numerOfEmployees
に次のクエリ
SELECT COUNT(*) AS NUM FROM EMPLOYEES
にNUMをマップしたり、私は、このようなユースケースのためにJDBCを使用する必要が行うには?場合によっては、結果タイプは、データベース、すなわちに依存してもよいこと
long num = ((Number)em.createNativeQuery("select count(*) from Employees")
.getSingleResult()).longValue();
注:JPQLは
long num = ((Number)em.createQuery("select count(e) from Employee e")
.getSingleResult()).longValue();
などからネイティブSQLクエリをクエリから
Doh、ありがとう。 docsから可能であることを理解できませんでした:http://docs.oracle.com/javaee/6/api/javax/persistence/EntityManager.html#createNativeQuery(java.lang.String)[私はオブジェクト型を取得し、そのintValue()を使用してサンプルを作成します。] –
'BigInteger'のスーパータイプである'(Number)... longValue() 'を使用するようにソリューションを更新しました。このケースで 'Number'のサブタイプを返さないDB /ドライバですが、元の答えの'(long) 'キャストは"決して "機能しません。 (私はあなたがタイプマッピングとして 'Number.class'を指定できるかどうか疑問に思っています(Double.classがうまくいかないようです:http://stackoverflow.com/questions/8959771/jpql-native-query-using-合計とカウント) – eckes