如何在sqlalchemy中执行LIKE查询?

2024-02-23

我在用sqlalchemy从表中获取数据。 现在从名为的表中获取所有记录audit_trail_table正在按预期工作。

select_stmt = select([self.audit_trail_table]).where(self.audit_trail_table.c.id == int(id))
row = conn.execute(select_stmt).fetchone()

现在我想执行LIKE多列查询如下:

filter_query = #(some value which will work as a filter_query while fetching )records
filter_stmt = select([self.audit_trail_table]).where(self.audit_trail_table.c.first_name like '%' + filter_query + '%' or self.audit_trail_table.c.last_name like '%')

但它在 LIKE 时给出错误。我怎样才能实现这个目标?


您可以使用like http://docs.sqlalchemy.org/en/rel_0_9/core/sqlelement.html#sqlalchemy.sql.operators.ColumnOperators.like操作员:

select([self.audit_trail_table]).where(
    self.audit_trail_table.c.first_name.like('%' + filter_query + '%') or 
    self.audit_trail_table.c.last_name.like('%abc%')
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在sqlalchemy中执行LIKE查询? 的相关文章