如何在 Orator 中使用多个 LIKE 查询?
如何在 python 的 orator 中构建多个 like 查询?
原生 sql 语句支持使用 or 运算符将多个 like 查询条件组合在一起,例如:
select * from `think_user` where (`name` like '%think%' or `name` like '%php%')
要将此查询转换为 orator,可以使用多次赋值方法:
and 逻辑:
# 实现 and 逻辑 search = ['%word1%', '%word2%', '%word3%', ...] info = db.table('full_text') for s in search: info = info.where('title', 'like', s) result = info.get()
or 逻辑:
# 实现 OR 逻辑 search = ['%word1%', '%word2%', '%word3%', ...] info = DB.table('full_text') for s in search: if search.index(s) == 0: info = info.where('title', 'like', s) else: info = info.or_where('title', 'like', s) result = info.get()
需要特别注意的是,与原生 sql 语句不同,orator 的 like 查询使用通配符 % 包裹搜索词,而不是使用百分号占位符。
以上就是如何在 Orator 中使用多个 LIKE 查询?的详细内容,更多请关注其它相关文章!