0

我是 sqlAlchemy 的新手。我想将现有的 SQL 查询转换为 sqlAlchemy。

条件是(如果名字变量不为空,则使用 firstName 显示结果,否则忽略)

...
AND (:FirstName is NULL 
   OR UPPER (employee.firstname) LIKE UPPER ('{firstName}'||'%'))
AND (:LasttName is NULL 
   OR UPPER (employee.firstname) LIKE UPPER ('{lastName}'||'%'))
4

1 回答 1

0

您可以使用 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)
)

希望它有所帮助。

于 2022-02-27T19:46:31.683 回答