1

これはよくわかりません。このようなテーブルがあります

user_id | time       |
----------------------
1       | 10         |
1       | 11         |
1       | 12         |
2       | 13         |
3       | 14         |

それ以上のことがありtime、日時フィールドですが、その情報は無関係であるべきです。ユーザーごとに最新のレコードのみを取得したいと思います。したがって、私の結果セットは次のようになります

user_id | time       |
----------------------
1       | 12         |
2       | 13         |
3       | 14         |

Rails ActiveRecord インターフェイスを使用してこれを行うにはどうすればよいですか? GROUP BY と関係があると思いますが、これらのクエリをよく理解したことがありません。

4

2 に答える 2

0

次のクエリを使用します。

select user_id,time from tableName where user_id=(select last(user_id) from tableName) group by user_id

お役に立てば幸いです。

于 2013-04-26T06:03:24.063 に答える