Hi Michael,

(Sorry for the repost at sqlalchemy-devel I was not able to find this
post, so I thought it didnt go through)

I can write up a small sample later. When I turn echoing on the DB
engine, I can see that doing:

    query[start:end]

issues the full query, not using limit, offset. Unlike:

    query[start]

which does issue a limit 1 offset `start` query

I forgot about using limit and offset directly, which is what i need
to do. But I would have thought that it was more usable to do a
limit/offset if a user is requesting a slice of the result set.

I undrestand that edge slices may not be supported, especially in
reverse, or when they overlap a boundary.

Thanks,

--
Hatem

On Aug 28, 8:57 am, Michael Bayer <[EMAIL PROTECTED]> wrote:
> On Aug 28, 2008, at 12:18 AM, PyDevler wrote:
>
>
>
>
>
> > I am using the ORM query strategy using session.query. I vaguely
> > remember seeing in the past that doing a slice on the result set, i.e.
> > result[:10] used to perform a Limit/Offset query, it may not have been
> > so. Nevertheless, with SA 0.5beta3 this is definitely not the case. It
> > seems that limit offset queries are only issued when I index the
> > result set, e.g. result[0] which does a limit 1 offset 0.
>
> > The question is, how would I be able to extend the slicing to use
> > Limit Offset. e.g:
>
> >    result[:10] => Limit 10 offset 0
>
> > I have a large database, and I quickly run out of memory with queries
> > that do not utilize the Limit Offset.
>
> > Anything better than [result[i] for i in range(0,10)] would be greatly
> > appreciated (since that would run 10 different queries).
>
> query[start:end] works just great, I've been using every 0.5 version
> for a soon-to-be production app here.   There may be some edge cases
> that are not supported, such as result[-5:-10], and we also now have
> checks which prevent subsequent filtering applied to an already
> limited query, since this is an ambiguous use case (i.e., do you want
> to filter from the limited results, or apply the filter first?  SQLA
> would not like to guess.  If you were expecting the latter, then I'm
> glad I decided to implement it this way since the former is more
> "correct").
>
> Additionally limit/offset can be applied directly using limit() and
> offset().    Do you have a test case illustrating your specific issue ?

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

Reply via email to