質問編集履歴

1

最終的なクエリ

2017/05/26 05:51

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -229,3 +229,53 @@
229
229
 
230
230
 
231
231
  ご経験者の方で、こういった機能は一般的にどういった作りをする事が多いのか、教えていただければ幸いです。
232
+
233
+
234
+
235
+ ---
236
+
237
+ **最終的なクエリ**
238
+
239
+
240
+
241
+ ご回答くださった方、ありがとうございます。
242
+
243
+ いただいた情報を元に当方で改めて考え、最終的に以下のクエリに落ち着きました。
244
+
245
+
246
+
247
+ yambejp様の回答を元に、一部非相関サブクエリ(IN)を相関サブクエリ(EXISTS)に置き換えてみました。
248
+
249
+
250
+
251
+ ```SQL
252
+
253
+ SELECT * FROM tbl_message as tm1
254
+
255
+ WHERE tm1.id IN(
256
+
257
+ SELECT max(id) FROM tbl_message AS tm2
258
+
259
+ WHERE EXISTS (
260
+
261
+ SELECT id FROM tbl_board AS tb
262
+
263
+ WHERE
264
+
265
+ (user_name_1='田中' OR user_name_2='田中')
266
+
267
+ AND
268
+
269
+ tm2.board_id = tb.id
270
+
271
+ )
272
+
273
+ GROUP BY board_id
274
+
275
+ )
276
+
277
+ ORDER BY created_at DESC
278
+
279
+
280
+
281
+ ```