如何在sqlalchemy中执行LIKE查询? [英] how to execute LIKE query in sqlalchemy?

查看:1992
本文介绍了如何在sqlalchemy中执行LIKE查询?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I am using sqlalchemy to fetch data from tables. Right now fetching all records from a table called audit_trail_table is working as expected.

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

现在,我希望对多个列执行LIKE查询,如下所示:

Now I wish to execute LIKE queries on multiple columns as follows:

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上会出错.我该如何实现?

But it gives an error at LIKE. How can I achieve this?

推荐答案

请像操作符一样使用

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%'))

http://docs. sqlalchemy.org/en/rel_0_9/core/sqlelement.html#sqlalchemy.sql.operators.ColumnOperators.like

这篇关于如何在sqlalchemy中执行LIKE查询?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆