在使用pypika和运算符生成查询时,我对使用多个条件感到有点困惑
from pypika import Field, Query
query = Query.from_('test').select('column1','column2')
query = query.where(operator.eq(Field('column1'), 12))
使用上面的代码,我可以为equal
添加带有operator.eq
的条件,我们可以进行如下其他操作
operator.lt(a, b)
operator.le(a, b)
operator.eq(a, b)
operator.ne(a, b)
operator.ge(a, b)
operator.gt(a, b)
operator.not
在我的例子中,动态地获取操作值,如
Equal
NotEqual
LessThan
LessThanOrEqual
GreaterThan
GreaterThanOrEqual
如何在不添加大量if
条件的情况下形成查询?相反,我试图找到operator.eq
,operator.le(a, b)
和Equal
,LessThanOrEqual
到一个函数,并使用它们来where
条件
query = query.where(operator.eq(Field('column1'), 12))
使用python dict,如下所示:
像这样使用它
其中
key = 'LessThan' # Or NotEqual, Equal
相关问题 更多 >
编程相关推荐