SELECT * FROM (SELECT * FROM table ORDER BY table.date ASC) WHERE ROWNUM <= 10
これを、EntityManagerから、createQuery( query )をCallしてSQLを実行するも失敗。
↓の仕様をみると、
”HQL 副問い合わせは、 select または where 節だけで使われることに注意してください。”
FROM句で使えないので、はまりました。
で、解決策は、PureJavaのjavax.persistence.QueryのsetMaxResults()を使って引数に10を入れれば、ソート後の結果から10件取得できました。
0 件のコメント:
コメントを投稿