質問編集履歴
3
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -106,7 +106,7 @@
|
|
106
106
|
|
107
107
|
で status_list = [2,3] を検索キーとしてあたえたときにこの全部をもっているユーザを探して
|
108
108
|
|
109
|
-
この場合 ユーザ1 とユーザ2
|
109
|
+
この場合 ユーザ1 とユーザ2 (ユーザ3 はステータス 2 をもってないので除外)
|
110
110
|
|
111
111
|
を id ではなく [<User1> <User2>] のような users のリレーションとして出力したいです
|
112
112
|
|
2
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -119,3 +119,7 @@
|
|
119
119
|
```
|
120
120
|
|
121
121
|
のようにかけば動きそうな気がするのですが user_statuses をインデックスのついてない status_id で検索してることになって遅くならなりそうなので、user_statuses の検索は foreign key? (意味がよくわかってないですが)のついてるuser_id をキーに検索をかけたいです
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
Rails の ActiveRecord メソッドとSQLがまざってしまってますがすいません…
|
1
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -51,3 +51,71 @@
|
|
51
51
|
|
52
52
|
|
53
53
|
つまり検索中のユーザのIDを他のテーブル検索の条件につかいたいんですがこういうことってできるのでしょうか
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
サンプル:
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
[users table]
|
64
|
+
|
65
|
+
1
|
66
|
+
|
67
|
+
2
|
68
|
+
|
69
|
+
3
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
[user_statuses table]
|
74
|
+
|
75
|
+
user_id status_id
|
76
|
+
|
77
|
+
1 1
|
78
|
+
|
79
|
+
1 2
|
80
|
+
|
81
|
+
1 3
|
82
|
+
|
83
|
+
2 2
|
84
|
+
|
85
|
+
2 3
|
86
|
+
|
87
|
+
2 4
|
88
|
+
|
89
|
+
3 3
|
90
|
+
|
91
|
+
3 4
|
92
|
+
|
93
|
+
3 5
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
(ユーザ1 はステータス 1,2,3
|
98
|
+
|
99
|
+
ユーザ2 はステータス 2,3,4
|
100
|
+
|
101
|
+
ユーザ3 はステータス 3,4,5
|
102
|
+
|
103
|
+
をもってる)
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
で status_list = [2,3] を検索キーとしてあたえたときにこの全部をもっているユーザを探して
|
108
|
+
|
109
|
+
この場合 ユーザ1 とユーザ2
|
110
|
+
|
111
|
+
を id ではなく [<User1> <User2>] のような users のリレーションとして出力したいです
|
112
|
+
|
113
|
+
(このあと Users に対しても where でしぼりこみをかけるため)
|
114
|
+
|
115
|
+
```
|
116
|
+
|
117
|
+
users.where("id IN (SELECT user_id FROM user_statuses WHERE status_id IN #{status_list})")
|
118
|
+
|
119
|
+
```
|
120
|
+
|
121
|
+
のようにかけば動きそうな気がするのですが user_statuses をインデックスのついてない status_id で検索してることになって遅くならなりそうなので、user_statuses の検索は foreign key? (意味がよくわかってないですが)のついてるuser_id をキーに検索をかけたいです
|