0

我正在使用带有postgres的rails。我有一个名为 'attempts' 的表,它属于一个 'users' 表。我想检索所有尝试,但只显示每个用户的最新尝试。

所以我想要这样的代码:

Attempt.group(:user_id).having('latest(created_at)')

上面的代码不起作用。

4

1 回答 1

1

我不知道 Rails,但可能是 Postgresql 中不存在“最新”。可以尝试 ...have('max(created_at)')

否则这应该做的工作:

sql = "Select user_id, max(created_at) from attempt group by user_id"
records_array = ActiveRecord::Base.connection.execute(sql)

灵感来源

于 2013-11-12T23:56:23.790 回答