質問編集履歴
5
( 2020/08/15 14:21 に削除 ) を削除
test
CHANGED
File without changes
|
test
CHANGED
@@ -224,9 +224,11 @@
|
|
224
224
|
|
225
225
|
u.name author_name,
|
226
226
|
|
227
|
+
-- 以下2つのblock日はSELECTに不要でした ( 2020/08/15 14:21 に削除 )
|
228
|
+
|
227
|
-
b1.created_at date_blocking,
|
229
|
+
-- b1.created_at date_blocking,
|
228
|
-
|
230
|
+
|
229
|
-
b2.created_at date_blocked
|
231
|
+
-- b2.created_at date_blocked
|
230
232
|
|
231
233
|
|
232
234
|
|
@@ -268,7 +270,7 @@
|
|
268
270
|
|
269
271
|
|
270
272
|
|
271
|
-
-- 以下のWHEREは間違いです
|
273
|
+
-- 以下のWHEREは間違いです ( 2020/08/15 14:07 に削除 )
|
272
274
|
|
273
275
|
/*
|
274
276
|
|
@@ -282,7 +284,7 @@
|
|
282
284
|
|
283
285
|
AND b2.created_at IS NULL -- ➅
|
284
286
|
|
285
|
-
-- 以下忘れていたので追記(2020/08/14 13:34)
|
287
|
+
-- 以下忘れていたので追記( 2020/08/14 13:34 に追加 )
|
286
288
|
|
287
289
|
AND ( k.created_at IS NOT NULL OR f.created_at IS NOT NULL ) -- ➂➃
|
288
290
|
|
@@ -290,7 +292,7 @@
|
|
290
292
|
|
291
293
|
|
292
294
|
|
293
|
-
-- 以下のWHEREが正しいです
|
295
|
+
-- 以下のWHEREが正しいです ( 2020/08/15 14:07 に追加 )
|
294
296
|
|
295
297
|
WHERE
|
296
298
|
|
4
WHEREを修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -268,19 +268,53 @@
|
|
268
268
|
|
269
269
|
|
270
270
|
|
271
|
+
-- 以下のWHEREは間違いです(➁が抜けていました)
|
272
|
+
|
273
|
+
/*
|
274
|
+
|
271
275
|
WHERE
|
272
276
|
|
273
|
-
p1.post_kind = 1
|
277
|
+
p1.post_kind = 1 -- ➀
|
274
|
-
|
278
|
+
|
275
|
-
AND p1.is_trash = 0
|
279
|
+
AND p1.is_trash = 0 -- ➄
|
276
|
-
|
280
|
+
|
277
|
-
AND b1.created_at IS NULL
|
281
|
+
AND b1.created_at IS NULL -- ➅
|
278
|
-
|
282
|
+
|
279
|
-
AND b2.created_at IS NULL
|
283
|
+
AND b2.created_at IS NULL -- ➅
|
280
284
|
|
281
285
|
-- 以下忘れていたので追記(2020/08/14 13:34)
|
282
286
|
|
283
|
-
AND ( k.created_at IS NOT NULL OR f.created_at IS NOT NULL )
|
287
|
+
AND ( k.created_at IS NOT NULL OR f.created_at IS NOT NULL ) -- ➂➃
|
288
|
+
|
289
|
+
*/
|
290
|
+
|
291
|
+
|
292
|
+
|
293
|
+
-- 以下のWHEREが正しいです
|
294
|
+
|
295
|
+
WHERE
|
296
|
+
|
297
|
+
p1.post_kind = 1 -- ➀
|
298
|
+
|
299
|
+
AND p1.is_trash = 0 -- ➄
|
300
|
+
|
301
|
+
AND (
|
302
|
+
|
303
|
+
(
|
304
|
+
|
305
|
+
b1.created_at IS NULL -- ➅
|
306
|
+
|
307
|
+
AND b2.created_at IS NULL -- ➅
|
308
|
+
|
309
|
+
AND ( k.created_at IS NOT NULL OR f.created_at IS NOT NULL ) -- ➂➃
|
310
|
+
|
311
|
+
)
|
312
|
+
|
313
|
+
OR p2.created_at IS NOT NULL -- ➁
|
314
|
+
|
315
|
+
)
|
316
|
+
|
317
|
+
|
284
318
|
|
285
319
|
```
|
286
320
|
|
3
【現状のコード】に、「-- 以下忘れていたので追記(2020/08/14 13:34)」を追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -278,6 +278,10 @@
|
|
278
278
|
|
279
279
|
AND b2.created_at IS NULL
|
280
280
|
|
281
|
+
-- 以下忘れていたので追記(2020/08/14 13:34)
|
282
|
+
|
283
|
+
AND ( k.created_at IS NOT NULL OR f.created_at IS NOT NULL )
|
284
|
+
|
281
285
|
```
|
282
286
|
|
283
287
|
### 【試したコード】
|
2
「###」を追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -202,7 +202,7 @@
|
|
202
202
|
|
203
203
|
```
|
204
204
|
|
205
|
-
【現状のコード】
|
205
|
+
###【現状のコード】
|
206
206
|
|
207
207
|
このデータから条件に合致した投稿を得るSELECTですが、先述のようにWHEREの対象がpostsのすべてになっていると思います。
|
208
208
|
|
1
誤字
test
CHANGED
File without changes
|
test
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
|
11
11
|
|
12
12
|
|
13
|
-
そこで、➀➁➂➃に限定したpostsを対象に、
|
13
|
+
そこで、➀➁➂➃に限定したpostsを対象に、➄➅でWHEREをかけることができれば早くなると思っているのですが、そのための【試したコード】で躓いています。
|
14
14
|
|
15
15
|
|
16
16
|
|