回答編集履歴

3

edit group by 削除

2021/02/17 11:43

投稿

m.ts10806
m.ts10806

スコア80875

test CHANGED
@@ -19,10 +19,6 @@
19
19
  where
20
20
 
21
21
  category_id = 1
22
-
23
- group by
24
-
25
- film_id
26
22
 
27
23
  )
28
24
 

2

edit

2021/02/17 11:43

投稿

m.ts10806
m.ts10806

スコア80875

test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  ```sql
8
8
 
9
- with getCategoryFilmId(
9
+ with getCategoryFilmId as(
10
10
 
11
11
  select
12
12
 
@@ -42,13 +42,13 @@
42
42
 
43
43
  ```
44
44
 
45
+ [WITH問い合わせ(共通テーブル式)](https://www.postgresql.jp/document/12/html/queries-with.html)
45
46
 
46
47
 
47
48
 
49
+ ---
48
50
 
49
- 以下、若干勘違いしていた回答
51
+ --以下、若干勘違いしていた回答
50
-
51
- ---
52
52
 
53
53
  ER図だけでは何とも言えず、テーブル定義次第なところもあるのですが、
54
54
 

1

edit

2021/02/17 11:34

投稿

m.ts10806
m.ts10806

スコア80875

test CHANGED
@@ -1,3 +1,55 @@
1
+ 既に出ている回答で解決可能そうですけど、別の組み方で。
2
+
3
+ ※未検証
4
+
5
+
6
+
7
+ ```sql
8
+
9
+ with getCategoryFilmId(
10
+
11
+ select
12
+
13
+ film_id
14
+
15
+ from
16
+
17
+ film_category
18
+
19
+ where
20
+
21
+ category_id = 1
22
+
23
+ group by
24
+
25
+ film_id
26
+
27
+ )
28
+
29
+ select
30
+
31
+ title
32
+
33
+ from
34
+
35
+ film
36
+
37
+ join getCategoryFilmId on
38
+
39
+ getCategoryFilmId.film_id=film.film_id
40
+
41
+
42
+
43
+ ```
44
+
45
+
46
+
47
+
48
+
49
+ 以下、若干勘違いしていた回答
50
+
51
+ ---
52
+
1
53
  ER図だけでは何とも言えず、テーブル定義次第なところもあるのですが、
2
54
 
3
55
  必要なのは[GROUP BY ](https://www.postgresql.jp/document/12/html/queries-table-expressions.html#QUERIES-GROUP)ですかね。