- - PR -
hibernateでSQL結果件数範囲指定
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-08-08 11:24
こんにちは。 現在hibernateを使用してデータ検索を処理を書いているのですが、 例えば検索結果の150件〜200件目を取得したい場合に、Criteriaで 何かしら書く方法が無いかと悩んでいます。 データMAX件数指定は setMaxResults(int maxResults) というメソッドがあり、これを使用すると例えばORACLEでは SELECT ... FROM (SELECT ... FROM ... ORDER BY ...) WHERE ROWNUM < maxResults の様なSQLを発行してくれる様です。 ここでCriteriaを使用して WHERE ROWNUM BETWEEN A AND B の様なSQLを発行させる方法は無いでしょうか? 直接SQLでROWNUMと書いてしまうとORACLE依存になってしまう為、 できればCriteriaを使用できないかと悩んでいます。そうすれば hibernateの方言クラスによりデータベースの変更に耐えられる仕様 になるかと思っております。 色々API説明書を読んだのですが、該当する様なクラス、メソッド は見つけられませんでした。どなたかhibernateに詳しい方がおりま したら可否だけでもご教授いただけないでしょうか。 よろしく御願いいたします。 | ||||
|
投稿日時: 2004-08-08 13:58
hibernateは詳しくないですが、 setFirstResult()メソッドが使えるのでは? [ メッセージ編集済み 編集者: りぼ 編集日時 2004-08-08 13:59 ] | ||||
|
投稿日時: 2004-08-08 17:35
りぼさんこんにちは。 setMaxResultsとsetFirstResultを組合せるのですね。 私の発想足らずでしたね。。 とても助かりました。ありがとうございます |
1