【发布时间】:2011-03-25 09:30:16
【问题描述】:
我想知道是否有办法使用 SqlAlchemy 创建 case 语句,例如postgresql version
如果没有简单的方法,也许文字 SQL 是要走的路?
【问题讨论】:
标签: python sqlalchemy
我想知道是否有办法使用 SqlAlchemy 创建 case 语句,例如postgresql version
如果没有简单的方法,也许文字 SQL 是要走的路?
【问题讨论】:
标签: python sqlalchemy
【讨论】:
来自SQLAlchemy官方doc的参考
from sqlalchemy import case, literal_column case( [ ( orderline.c.qty > 100, literal_column("'greaterthan100'") ), ( orderline.c.qty > 10, literal_column("'greaterthan10'") ) ], else_=literal_column("'lessthan10'") )上面将呈现给定的常量而不使用绑定 结果值的参数(但仍用于比较 值),如:
CASE WHEN (orderline.qty > 100) THEN 'greaterthan100' WHEN (orderline.qty > 10) THEN 'greaterthan10' ELSE 'lessthan10' END
【讨论】: