Ruby on rails 如何分组并获得计数有很多:通过rails
三种模式Ruby on rails 如何分组并获得计数有很多:通过rails,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-4,orm,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 4,Orm,三种模式 标签 职位 邮政标签 标签通过PostTags有许多帖子 因此,我需要的是获得具有最多帖子数量的所有标签的名称,其计数应满足以下代码的需要: Tag .select('tags.name, COUNT(posts.*) AS posts_count') .joins(:posts) .order('posts_count DESC') .group('tags.name') .group_by(&:posts_count) 就这么简单,它将适用于Rai
- 标签
- 职位
- 邮政标签
因此,我需要的是获得具有最多帖子数量的所有标签的名称,其计数应满足以下代码的需要:
Tag
.select('tags.name, COUNT(posts.*) AS posts_count')
.joins(:posts)
.order('posts_count DESC')
.group('tags.name')
.group_by(&:posts_count)
就这么简单,它将适用于Rails3和Rails4
Post.joins(:tags).group("tags.name").count
至少给我们一个迁移文件来查看DB列:)@ AARUP:把它看作是非常基本的东西,标签= > ID、名称、POST=> ID、描述、PASSyTaby= > TAGYID、PASTION你使用哪个DB客户端?标签和POST包含多对多关系吗?是的,最大值是在哪一个基础上?它是不正确的。代码>标记和
Post
没有直接映射。是。。那么您在哪里使用了联接表?是吗?哦,凯。。我不知道。你能展示一下控制台sql吗?我不知道。但是您缺少的
子句来筛选最大帐户。@Alexaner让我检查一下,如果不起作用,我会给您回电话,如果起作用,我会接受answer@SRDP您可以将.groupby(&:posts\u count)
添加到链的末尾,以便根据帖子数量对标签进行分组(如果您需要最大数量的帖子)。