我有一张叫做人际关系的桌子。我想返回关系最多的前10位用户。想想最流行的用户列表。
我见过关于在一列中返回顶部事件的示例,但两者都有?这是表格的一个示例:
user_a | user_b
1 | 2
2 | 5
3 | 4
4 | 5
1 | 4
2 | 6
1 | 5
以下是该模型的一个示例:
class Relationship(models.Model):
user_a = models.ForeignKey(User, related_name='user_a')
user_b = models.ForeignKey(User, related_name='user_b')
如何在django中创建这样的查询集?
答案 0 :(得分:0)
您可以使用如下原始查询:
select user, count(*)
from (
select user_a as user
from table
union all
select user_b as user
from table )
group by user
order by count(*) desc