質問するログイン新規登録

回答編集履歴

1

2017/04/21 04:08

投稿

moke
moke

スコア2241

answer CHANGED
@@ -18,4 +18,8 @@
18
18
  いっそArelを使うって方法もありますが、これもrailsのversionによっては使えないのですよ。
19
19
  [Arelでサブクエリ](http://qiita.com/tkawa/items/e65c8847e57a5329f336)←rails4.2以降ではうまく動かない
20
20
 
21
- 一番楽なのは[MySQLでGROUP BYとORDER BYを同時に使用する場合に気をつけたいこと](https://norm-nois.com/blog/archives/1293)を参考にfind_by_sqlを使って直接sqlを書くのがいいのではないでしょうか?
21
+ 一番楽なのは[MySQLでGROUP BYとORDER BYを同時に使用する場合に気をつけたいこと](https://norm-nois.com/blog/archives/1293)を参考にfind_by_sqlを使って直接sqlを書くのがいいのではないでしょうか?
22
+ 結果こうなったそうです。
23
+ ```ruby
24
+ @activities = PublicActivity::Activity.find_by_sql("SELECT activities.* FROM activities WHERE activities.created_at IN(SELECT MAX(activities.created_at) FROM activities GROUP BY activities.trackable_id, activities.key) ORDER BY activities.created_at DESC")
25
+ ```