根据Rails中的列获取唯一记录

时间:2019-04-09 23:24:47

标签: ruby-on-rails activerecord

寻找一种方法来获取资源的所有相关记录,并通过一列(:author_id来区分它们,然后通过created_at列对其进行排序。 这里有几个类似的问题,但是我看不到任何包含我需要的排序的问题。试图避免转换为数组。

  Post.find(id)
   .ratings
    .select(
     "DISTINCT on (author_id) author_id, rating_number, created_at, id")
      .order(created_at: :desc)

第一部分有效,但是当介绍该顺序时,它给我一个错误,无法将created_at添加到DISTINCT子句中。然后它可以工作,但是随后我得到的只是:author_id上没有区别的记录。

0 个答案:

没有答案