On Wed, Jun 23, 2010 at 1:50 AM, Ralph Heinkel <ralph.hein...@web.de> wrote:
> Hi,
>
> we are about upgrading our sqlalchemy library from 0.4.8 to something newer
> and during this process we have detected that the LIMIT/OFFSET support for
> oracle has been changed, from using  “ROW NUMBER OVER...” to a wrapped
> subquery approach in conjunction with ROWNUM as described in
> http://www.sqlalchemy.org/docs/reference/dialects/oracle.html#limit-offset-support
>
>
> Unfortunately this approch is about 10 times slower for large tables which
> is mainly related to the fact that the innermost subquery has to sort the
> entire table with a plain 'order by'.
> Interestingly the
>        ROW_NUMBER() OVER (ORDER BY some db fields)
> is so much more efficient than the normal order by approach.

Do you have benchmarks to back that up?  In Django, we switched from
using row_number to rownum after a contributor convinced me that
rownum was faster.  See:

http://code.djangoproject.com/ticket/9136

Thanks,
Ian

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalch...@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.

Reply via email to