我正在尝试用延迟的潜在顾客对象的数量来注释用户。延迟线索的计算很复杂(使用RawSQL),这是使用自定义模型管理器实现的。因此,我正在尝试使用子查询来实现这一点。
MAX_FRAME
但是,我不断收到此错误:
yOffset
更新:
我尝试仅添加('id'),因此我的代码:
MAX_FRAME
这生成了sql查询:
frames
这引发错误:
sq = Lead.delayed.filter(assigned_to_id=OuterRef('pk'))
User.objects.annotate(num=Count(Subquery(sq.count())))
我希望将查询生成为:
ValueError: This queryset contains a reference to an outer query and may only be used in a subquery.
如何使用django ORM做到这一点?
答案 0 :(得分:0)
替代问题标签可能是如何使用Count()
不执行分组(GROUP BY
)或如何在Subquery
中进行计数 strong>
检查this answer中是否有自定义Count
函数,以便对任何查询集进行简单计数而没有分组。
不幸的是,到目前为止,还没有为此找到本地django选项。
答案 1 :(得分:0)
尽管Oleg的答案与我的要求非常接近,但是在django生成的查询中仍然出现SQL错误。因此,我最终使用cursor.