如何对记录进行分组,然后根据列选择不同的记录

时间:2016-11-21 14:16:17

标签: ruby-on-rails activerecord ruby-on-rails-5

我尝试按类别对某些记录进行分组,然后根据别名列选择所有不同/唯一记录。这是我得到的,但它没有工作 - 它仍然带来非不同的记录。

Location.where("calendar_account_id = ?", current_user.calendar_accounts.first).group(:id,:alias).order("alias ASC").distinct.group_by(&:category)

我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

试试这个,

Location.select("DISTINCT(alias), *").where("calendar_account_id = ?", current_user.calendar_accounts.first).order("alias ASC").group_by(&:category)

Location.where("calendar_account_id = ?", current_user.calendar_accounts.first).group(:alias).order("alias ASC").group_by(&:category)