我正在构建一个web2py控制器,我需要在表中查询一个字段中值x的组合和第二个字段(在同一行中)的值y的组合 . 要查询单个字段,我只想写
db.table.field == x
但我不知道如何编写查找 field==x AND field2==y 的查询
field==x AND field2==y
(db.table.field1==x)&(db.table.field2==y)
请参阅logical operators上的书籍部分 .
对于更高级的版本,您可以将查询附加到列表并使用python的reduce函数 .
queries=[] if arg1 == "x": queries.append(db.table.field == x) if arg2 == "y": queries.append(db.table.otherfield == y) # many conditions here.... query = reduce(lambda a,b:(a&b),queries) db(query).select()
2 回答
请参阅logical operators上的书籍部分 .
对于更高级的版本,您可以将查询附加到列表并使用python的reduce函数 .