0

我想知道如何将以下内容构建到 Django ORM 表单中:

SELECT name,mobile_number,COUNT(*) as count, created FROM core_user,core_useractivity  WHERE core_user.id = core_useractivity.user_id GROUP BY user_id ORDER BY count DESC;

其中 name、mobile number 是 core_user 表或 USER 模型中的列,created 是 core_useractivity 中的列,其模型是 UserActivity 。这两个表在 user_id 上连接。此外,我按 user_id 对行进行分组,以降序显示结果。

4

1 回答 1

1

尝试使用用户活动计数来注释用户。

from django.db.models import Count
User.objects.annotate(num_activities=Count('useractivity')).order_by('num_activities')

这将返回一个用户查询集,每个用户都有一个属性num_activities。有关更多信息,请参阅注释文档。

于 2013-02-05T12:11:16.963 回答