15
A
回答
28
請參閱sqlalchemy.sql.expression.case函數和文檔頁面上的更多示例。但是,如果是這樣的(逐字從鏈接到文件):
case([(orderline.c.qty > 100, item.c.specialprice),
(orderline.c.qty > 10, item.c.bulkprice)
], else_=item.c.regularprice)
case(value=emp.c.type, whens={
'engineer': emp.c.salary * 1.1,
'manager': emp.c.salary * 3,
})
編輯-1:(回答評論)當然,你可以,見下面的例子:
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True, autoincrement=True)
first_name = Column(String)
last_name = Column(String)
xpr = case([(User.first_name != None, User.first_name + " " + User.last_name),],
else_ = User.last_name).label("full_name")
qry = session.query(User.id, xpr)
for _usr in qry:
print _usr.fullname
有關混合屬性中使用的case
的示例,另請參閱Using a hybrid。
相關問題
- 1. 需要SQLAlchemy的查詢與GROUP BY CASE
- 2. SQLAlchemy過濾器,substr,case
- 3. SQLAlchemy的核心表達 - COALESCE和CASE
- 4. LINQ to SQL與where case case
- 5. 如何在SQLAlchemy中使用case語句執行此查詢?
- 6. WHERE CASE與DATEADD
- 7. CASE與DECODE
- 8. 與Case語句
- 9. 流利的nhibernate m-to-m與列
- 10. 與SQLAlchemy的
- 11. 與SQLAlchemy的
- 12. SQLAlchemy的與backrefs
- 13. SQLAlchemy sqlalchemy.sql.expression.select與sqlalchemy.sql.expression.Select
- 14. 與瓶+ SQLAlchemy的
- 15. 與SQLAlchemy的
- 16. 與SQLAlchemy的
- 17. QTreeView與sqlalchemy
- 18. 與CASE SQL更新查詢時
- 19. ipython與python -m IPython
- 20. CASE何時在SQL中
- 21. SQL問題 - CASE何時
- 22. 如何與兩個數據模型構建M至m關係
- 23. SQLAlchemy加入複合外鍵(與flask-sqlalchemy)
- 24. CASE存在時
- 25. 與SELECT CASE和MOD
- 26. CASE與AS查詢
- 27. 子與case語句
- 28. SQL Server IIF與CASE
- 29. SQL更新與CASE
- 30. Case語句與extglob
這是問題的一個副本: http://stackoverflow.com/questions/5430640/sqlalchemy-case-statement-case-if-then-else – Nrai