質問編集履歴
5
質問内容の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,11 +12,17 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
|
15
|
+
最終的にほしいのは select {user_id, rank, point} で
|
16
16
|
|
17
|
+
まだランキングをつける処理はかけていないんですが
|
18
|
+
|
17
|
-
とりあえず user_id とユーザに関連しているポイントレコードの一定期間内の集計のソートを
|
19
|
+
とりあえず user_id とユーザに関連しているポイントレコードの一定期間内の集計のソートを
|
20
|
+
|
21
|
+
select {user_id, point} で取り出そうとしたのですが
|
18
22
|
|
19
23
|
ActiveRecord のクエリーをかくのにまだなれていなくて Syntaxerror がなかなかとれません
|
24
|
+
|
25
|
+
|
20
26
|
|
21
27
|
|
22
28
|
|
4
質問内容の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
user モデルが has_many: points をもっていて
|
2
2
|
|
3
|
-
point モデルが point と create_at をもっています
|
3
|
+
point モデルが belongs_to の user_id と point 値と create_at をもっています
|
4
4
|
|
5
5
|
|
6
6
|
|
@@ -46,6 +46,6 @@
|
|
46
46
|
|
47
47
|
|
48
48
|
|
49
|
-
where や sum をどこにつければいいのか
|
49
|
+
where や sum をどこにつければいいのかわからなくて
|
50
50
|
|
51
51
|
どのようにかけばよいのでしょうか
|
3
タグ追加
test
CHANGED
File without changes
|
test
CHANGED
File without changes
|
2
質問内容の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -2,11 +2,13 @@
|
|
2
2
|
|
3
3
|
point モデルが point と create_at をもっています
|
4
4
|
|
5
|
+
|
6
|
+
|
7
|
+
指定したユーザー(リレーションでもってる)に対して
|
8
|
+
|
5
9
|
ユーザごとに points レコードの一定期間内の point (user.points.point) を集計してランキングにしたいです
|
6
10
|
|
7
|
-
|
8
|
-
|
9
|
-
|
11
|
+
期間は term_since, term_until で変数でもっています
|
10
12
|
|
11
13
|
|
12
14
|
|
1
質問内容の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -22,7 +22,7 @@
|
|
22
22
|
|
23
23
|
users.select(id, sum(:points).where(create_at >= term_since && create_at <= term_until) as point)
|
24
24
|
|
25
|
-
.order(point)
|
25
|
+
.order(:point)
|
26
26
|
|
27
27
|
.find_each do |id, point|
|
28
28
|
|
@@ -36,7 +36,7 @@
|
|
36
36
|
|
37
37
|
.select(sum(point) as point)
|
38
38
|
|
39
|
-
.order(point)
|
39
|
+
.order(:point)
|
40
40
|
|
41
41
|
.find_each do |id, point|
|
42
42
|
|