ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Larry Meadors <larry.mead...@gmail.com>
Subject Re: iBatis - MySQL pagination
Date Fri, 15 May 2009 16:47:06 GMT
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.popa@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 <bhaarat.s@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.popa@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
>

Mime
View raw message