Just remember with rownum in oracle to do a subselect:

select * from (
  your real select here
) where rownum ...

Larry



On Fri, May 15, 2009 at 10:42 AM, Alin Popa <alin.p...@gmail.com> wrote:
> Bhaarat,
>
> If you're using mysql, you could do pagination using LIMIT statement,
> which is pretty straight forward.
> On Mssql - TOP (using cursors).
> On Oracle - ROWNUM.
>
>
> On Fri, May 15, 2009 at 7:14 PM, Bhaarat Sharma <bhaara...@gmail.com> wrote:
>> that is a very interesting question.  We were looking into doing pagination
>> with iBatis as well but would not want a full scan on the DB but rather only
>> get amount of rows specified by skipResults
>>
>> On Fri, May 15, 2009 at 12:10 PM, Alin Popa <alin.p...@gmail.com> wrote:
>>>
>>> Hi,
>>>
>>> I'm using iBatis with MySQL and also trying to do some pagination:
>>>
>>>
>>> return getSqlMapClientTemplate().queryForList("getAll", skipResults,
>>> maxRecords);
>>>
>>> and the "getAll" query:
>>>
>>> <select id="getAllVJobs" resultMap="simpleResult">
>>>                SELECT * FROM mytable
>>> </select>
>>>
>>> Indeed, the pagination seems to work fine, BUT in mysql logs I see
>>> executed the entire "SELECT * FROM mytable" which is a full table
>>> scan.
>>> Doesn't seems very right to me.
>>>
>>> Is there a catch behind this idea ?
>>> Is fetching all records and after that iterate through them ? (I don't
>>> think it's very nice this way).
>>>
>>> Any ideas ?
>>>
>>> Thanks.
>>> Alin
>>
>>
>
>
>
> --
> Best Regards,
>
> Alin
>

Reply via email to