I thought subquery and alias where equivalent. Thanks Mike!

Den fredag 6 mars 2015 kl. 01:29:20 UTC+1 skrev Michael Bayer:
>
>
>
> Dani Hodovic <dani...@gmail.com <javascript:>> wrote: 
>
> > I've been struggling with a query that gets the most recent date as 
> described here: http://stackoverflow.com/a/123481/2966951 
> > 
> > I've been able to produce a SQLAlchemy variant, but it seems to be MUCH 
> slower when executed with MySQL. It also looks slightly differentwith 
> parameters around the inner query. http://pastebin.com/NWEsFtAY 
>
>
> I’m not sure why you’re using subquery() for the SQLAlchemy version when 
> the original SQL you’re looking for has no subquery (and the subquery will 
> perform *terribly* on MySQL).  Just join to “mytable” as an alias() itself. 
>   
>
> t1 = mytable.alias() 
> t2 = mytable.alias() 
>
>
> s.query(t1.userid, t1.date).outerjoin(t2, and_(t1.userid == t2.userid, 
> t1.date < t2.date)).filter(t2.userid == None) 
>
>
>
>
> > 
> > Please don't point me to scalar subqueries as I've looked at the 
> documentation and this was the best I could come up with. 
> > 
> > As this query is a part of a larger query I attempted to solve it with 
> text(), but combining ORM code and raw SQL is a pain in the ass. If there 
> is a text solution however, where this query could be joined with another 
> query that would work too. 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "sqlalchemy" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to sqlalchemy+...@googlegroups.com <javascript:>. 
> > To post to this group, send email to sqlal...@googlegroups.com 
> <javascript:>. 
> > Visit this group at http://groups.google.com/group/sqlalchemy. 
> > For more options, visit https://groups.google.com/d/optout. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at http://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to