我有一行代码看起来像这样
@words = Word.connection.select_all("select text, count(*) as occurs from words join works on words.work_id = works.id where works.grouping == 'group1' group by text order by occurs desc limit 10")
我想用更多的rails / active记录方式编写它,但语法对我来说还是很新的。
每个作品都有很多单词,每个单词都属于一个作品。答案 0 :(得分:0)
也许这段代码适合你:
Word.includes(:works).where("works.grouping == 'group1'").limit(10).count(:group => :text)
includes
方法使用您的工作表创建连接。 where
方法适用于条件,limit
是自解释性的,count
也带有group
的列。