Hello Stan, > Lukas came to our company some weeks ago to demonstrate jOOQ and we had a > look at the pagination query for oracle.
It has been a pleasure! Hope to see you at my upcoming JUGS talks (hopefully in July), with new input :-) > Some months ago, I came along a very interesting paper showing different > techniques for doing efficient pagination. > > http://www.inf.unideb.hu/~gabora/pagination/results.html > jOOQ would seem to use the solution n. 2. This is indeed very interesting. Now that you remind me of this, I realise that I tend to use solution #3 too, usually, as you can see here: http://stackoverflow.com/questions/6033080/speed-of-paged-queries-in-oracle > I have made a patch for n.3, but > could not test it yet (trouble with sonatype m2e on indigo...) > here it is. > https://github.com/stanislas/jOOQ/commit/cea35b05390cd4ccebccf19621ecfafacf2da148 > > What do you think? Thanks for this contribution. Note that "solution #4" seems to be equally fast as #3. I had already planned for this to be implemented some time, in order to be more consistent with DB", SQL Server and Sybase SQL Anywhere simulations of LIMIT .. OFFSET: http://sourceforge.net/apps/trac/jooq/ticket/1020 I didn't think it would also make sense to do so, performance-wise. What do you think of this? I'd personally prefer a ROW_NUMBER() OVER() solution... In any case, I'll re-raise the question on Stack Overflow and if confirmed by the Oracle gurus that usually reply on these things, I'll work in your contribution into jOOQ. Cheers Lukas
