1
5
不需要嵌套查询。您可以生成坏用户的pk列表,然后在下一个查询中排除包含这些pk的记录。
你可以把它浓缩成一行,但我想你会得到的。2个查询也不错。 编辑:您可能需要阅读以下文档: http://docs.djangoproject.com/en/dev/ref/models/querysets/#in 如果是这样的话,它听起来像是自动嵌套查询(因此数据库中只有一个查询触发):
但是 mysql没有很好地优化这一点,所以我上面的代码(2个完整的查询)实际上可以更快地运行。 两个都试试,和他们比赛! |
2
0
看起来你可以使用:
从django.db.models导入f
请测试一下,我不确定。 |
3
0
由于懒惰的计算,您可以将查询分解为几个不同的变量,使其更易于阅读。这里有一些
你也可以说
|
nadermx · Django中的原始sql查询问题 2 年前 |
liansheng · 在Django。如何使用字段长度[重复]排序 6 年前 |
bkramer · 订单重要时成功尝试分组查询 6 年前 |
martin_crd · Django中多个表的筛选和排序结果 6 年前 |
Phil Sheard · 使用大型子查询优化Django查询 6 年前 |
Max Malysh · 如何从Django找到Postgres版本? 6 年前 |