1
10
好吧,既然问题包括了模型定义,那么我向您提交,这应该是可行的,除非您的Django版本不支持我在这里使用的某些功能(在这种情况下,请告诉我!)以下内容:
Django允许
这应该用
只有一个数据库查询
有点像
结果应该是
最多两个查询来建立
编辑:
Django's QuerySet API reference
说这个开
在给定的列表中。 例子:
SQL等价物:
您还可以使用queryset动态评估值列表,而不是提供文字值列表:
此查询集将作为subselect语句进行计算:
上面的代码片段也可以写如下:
在Django 1.1中更改: 在Django1.0中,只有后一段代码是有效的。 第二种形式的可读性稍差,写起来不自然,因为它访问内部查询属性并需要valuesQueryset。如果您的代码不需要与Django1.0兼容,请使用第一个表单,直接传递一个查询集。 所以,我猜姜戈 是 能够通过 单一查询 在这里讨论的情况下提交给争议裁决委员会。如果数据库的查询分析器做得很好,效果可能会非常接近最优。:-) |
2
0
对。想做就做。这应该按预期工作:
任何原始查询都返回
|
3
0
我一直在研究类似的事情,但没有找到一个很好的解决方案。我用的是这样的东西:
这不太好,但我不认为Django允许您根据二级模型聚合和注释进行过滤。我将检查是否有人提出更好的解决方案。 |
4
0
您可能希望编写自定义管理器对象: http://docs.djangoproject.com/en/1.1/topics/db/managers/
我还没用过
|
5
0
可以改变一下吗? 如下图所示,您可以向线程类添加post-count属性,该属性对线程中的活动日志进行计数。 然后可以使用此日志计数,通过将一个类别中所有线程中的所有活动日志相加,来计算该类别中的活动日志。
|
Florent · 如何在Django中聚合多个字段? 1 年前 |
KWunsch · Django没有将pk引入模板 1 年前 |
Akshay mek · Vscode扩展建议不适用于某些文件夹 1 年前 |
Farid · 限制django每个客户的访问 2 年前 |
Blue · 从Django中的输入字段获取用户输入 2 年前 |
4SadMemeXD · 无法在Django中选择相关类别 2 年前 |