我的应用程序中有以下查询
query = cls.query().filter(cls.taskgroup_id == taskgroup_id, cls.availability == True, cls.task_id > min_task_id).order(cls.task_id)
query.fetch(1)
上面的工作正常如预期。(仅获取那些与 taskgroup_id 匹配且可用且 task_id > min_task_id 的实体)
但是,当我将查询分成多个语句时。
query = cls.query()
query.filter(cls.taskgroup_id == taskgroup_id)
query.filter(cls.availability == True)
query.filter(cls.task_id > min_task_id)
它没有按预期工作。
当我运行 [2] 时,查询形成分解为多个语句,它返回给我一个可用性为 False 的实体,并且 task_id 等于 min_task_id。
[2] 没有按预期(或按我预期)工作。我认为这里存在用户错误。想知道它是什么。