all three have different ways of doing date arithmetic so you’d need to build 
out an expression object such as “add_seconds()” that handles it individually 
on each backend (look in the docs for the custom compilation extension).   SQLA 
doesn’t have a date arithmetic system right now (it would be a huge deal to 
implement).



Guido Winkelmann <[email protected]> wrote:

> Does this only work on PostgreSQL? I need this to work on PostgreSQL, MySQL 
> and SQLite.
> 
> Am Donnerstag, 15. Januar 2015 20:15:43 UTC+1 schrieb Michael Bayer:
> you should be able to cast as interval: 
> 
> 
> from sqlalchemy.dialects.postgresql import INTERVAL 
> from sqlalchemy import cast 
> 
> select([test]).where(test.c.finished_on + cast(‘1 sec’, INTERVAL) * 
> test.c.wait < func.NOW()) 
> 
> 
> Guido Winkelmann <[email protected]> wrote: 
> 
> > Hi, 
> > 
> > How can I add one column containing integer values (NULL allowed), treating 
> > them as seconds, to another column from the same table containing datetime 
> > values and compare the result to the current time? 
> > 
> > I have a table with a datetime column "finished_on" and in int column 
> > "wait". 
> > Once wait seconds have passed since finished_on, I need to do something 
> > with 
> > that row. In postgres, the query to find these rows would look something 
> > like 
> > this: 
> > 
> > SELECT * FROM test WHERE finished_on + INTERVAL '1 sec' * wait < NOW(); 
> > 
> > How can I make a query like that in sqlalchemy? 
> > 
> > I have tried googling the problem, but the only solutions I found where 
> > those 
> > where you already have the interval value available in the calling python 
> > code. This doesn't help me here, since the interval can be different for 
> > each 
> > row. 
> > 
> > Regards, 
> > 
> >         Guido W. 
> > 
> > -- 
> > 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 [email protected]. 
> > To post to this group, send email to [email protected]. 
> > 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 [email protected].
> To post to this group, send email to [email protected].
> 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 [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to