如何在SQLAlchemy中执行LIKE查询?
我正在使用 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 的时候出现了错误。我该怎么做才能实现这个功能呢?
1 个回答
7
你可以使用 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%')
)