如何在 SQLAlchemy 中编写条件筛选查询
How to write a conditional filter query in SQLAlchemy
我是 sqlAlchemy 的新手。
我想将现有的 SQL 查询转换为 sqlAlchemy。
条件是(如果 first name 变量不为 null 显示带有 firstName 的结果,否则忽略)
...
AND (:FirstName is NULL
OR UPPER (employee.firstname) LIKE UPPER ('{firstName}'||'%'))
AND (:LasttName is NULL
OR UPPER (employee.firstname) LIKE UPPER ('{lastName}'||'%'))
您可以使用 sqlalchemy 函数执行此操作:
from sqlalchemy import func, or_, and_
db.session.query(
employee
).filter(
or_(
employee.firstname == None,
employee.firstname.ilike('...')
)
# add other filters if needed (and assumed)
)
希望对您有所帮助。
我是 sqlAlchemy 的新手。 我想将现有的 SQL 查询转换为 sqlAlchemy。
条件是(如果 first name 变量不为 null 显示带有 firstName 的结果,否则忽略)
...
AND (:FirstName is NULL
OR UPPER (employee.firstname) LIKE UPPER ('{firstName}'||'%'))
AND (:LasttName is NULL
OR UPPER (employee.firstname) LIKE UPPER ('{lastName}'||'%'))
您可以使用 sqlalchemy 函数执行此操作:
from sqlalchemy import func, or_, and_
db.session.query(
employee
).filter(
or_(
employee.firstname == None,
employee.firstname.ilike('...')
)
# add other filters if needed (and assumed)
)
希望对您有所帮助。