我在查询集中使用Django注释观察到了奇怪的行为。
只要我只计算子对象的数量,一切都很好:
"final_price"
当我使用Max添加有关某些子属性的第二个注释时,计数值似乎发生了变化。显然,这与状态数有关
>>> myqs = Parent.objects.all().annotate(num_children=Count('children))
>>> myqs.first().num_children
4
这是怎么回事?如何获得预期的行为(结果= 4)?
编辑,添加Count(, distinct = True )解决了此问题,但我认为这些值首先应该是不同的。