回答編集履歴
3
修正
answer
CHANGED
@@ -13,22 +13,8 @@
|
|
13
13
|
)
|
14
14
|
);
|
15
15
|
```
|
16
|
-
```sql
|
17
|
-
/* もしくは */
|
18
|
-
SELECT *
|
19
|
-
FROM members m
|
20
|
-
WHERE EXISTS (
|
21
|
-
SELECT *
|
22
|
-
FROM sales s
|
23
|
-
WHERE m.member_id = s.member_id
|
24
|
-
)
|
25
|
-
AND sale > (
|
26
|
-
SELECT avg(sale)
|
27
|
-
FROM sales
|
28
|
-
);
|
29
|
-
```
|
30
16
|
これでも動作するんじゃないかと思います。
|
31
|
-
しかしサブクエリをネスト
|
17
|
+
しかしサブクエリをネストすると重いと聞きますので、アナライズは行った方が良いかも知れません。
|
32
18
|
※実質最下層のサブクエリは固定値の取得だけなので、existsが速いかjoinが速いかという話になりそうですが…。
|
33
19
|
私ならKiyoshiMotokiさんが書かれたコードのようにjoinを使うと思います。
|
34
20
|
コードの可読性もそちらのほうが良いですし、売り上げデータを付けたくなってもjoinのほうなら簡単に対応できます。
|
2
表現修正
answer
CHANGED
@@ -28,7 +28,7 @@
|
|
28
28
|
);
|
29
29
|
```
|
30
30
|
これでも動作するんじゃないかと思います。
|
31
|
-
しかしサブクエリをネストすると重いと聞きますので、アナライズは行った方が良いかも知れません。
|
31
|
+
しかしサブクエリをネスト(or多用)すると重いと聞きますので、アナライズは行った方が良いかも知れません。
|
32
32
|
※実質最下層のサブクエリは固定値の取得だけなので、existsが速いかjoinが速いかという話になりそうですが…。
|
33
33
|
私ならKiyoshiMotokiさんが書かれたコードのようにjoinを使うと思います。
|
34
34
|
コードの可読性もそちらのほうが良いですし、売り上げデータを付けたくなってもjoinのほうなら簡単に対応できます。
|
1
追記
answer
CHANGED
@@ -13,6 +13,20 @@
|
|
13
13
|
)
|
14
14
|
);
|
15
15
|
```
|
16
|
+
```sql
|
17
|
+
/* もしくは */
|
18
|
+
SELECT *
|
19
|
+
FROM members m
|
20
|
+
WHERE EXISTS (
|
21
|
+
SELECT *
|
22
|
+
FROM sales s
|
23
|
+
WHERE m.member_id = s.member_id
|
24
|
+
)
|
25
|
+
AND sale > (
|
26
|
+
SELECT avg(sale)
|
27
|
+
FROM sales
|
28
|
+
);
|
29
|
+
```
|
16
30
|
これでも動作するんじゃないかと思います。
|
17
31
|
しかしサブクエリをネストすると重いと聞きますので、アナライズは行った方が良いかも知れません。
|
18
32
|
※実質最下層のサブクエリは固定値の取得だけなので、existsが速いかjoinが速いかという話になりそうですが…。
|