gpt4 book ai didi

python - 在 Django 中使用临时表连接替代 `IN`

转载 作者:太空狗 更新时间:2023-10-29 21:59:09 25 4
gpt4 key购买 nike

在 Django 中,通常会执行以下操作

MyModel.objects.filter(id__in=[huge array])

但是,如以下答案所述,它不是很有效:https://dba.stackexchange.com/questions/91247/optimizing-a-postgres-query-with-a-large-in

如果您使用的是 ORM,那么在 Django 中复制上述答案的好方法是什么。或者您是否必须为整个查询下拉到原始 sql。

我正在寻找的是,如果您有一个查询集,是否有一种很好的方法将该查询集与您创建的临时表(可能在原始 sql 中)连接起来。

最佳答案

您可以使用 select_related 选项来过滤将执行 in 效果的第二个表(另一个模型)。

类似于这个答案:Django select_related filter

我尽可能将它用于大型 IN

关于python - 在 Django 中使用临时表连接替代 `IN`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52974503/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com