在单个db调用中评估多个查询集

时间:2018-05-01 06:39:30

标签: python django django-orm

假设我有一个未评估的查询集列表:

q_list = [a.objects.all(), b.objects.all(),...]

我想在一次数据库调用中一次评估所有这些内容。我可以遍历列表并单独评估它们:

evaluated_q_list = map(list, q_list)

但这会产生多个数据库查询。是否可以使用Django ORM在单个数据库查询中执行此操作?

1 个答案:

答案 0 :(得分:1)

如果你想要的是将两个查询与SQL UNION操作结合起来Django supports that as a QuerySet method

但不清楚为什么要尝试将其强制转换为单个查询;有关您的用例的更多信息将有助于提出建议。