回答編集履歴

2

修正

2021/02/17 11:44

投稿

gentaro
gentaro

スコア8947

test CHANGED
@@ -22,7 +22,7 @@
22
22
 
23
23
  JOIN film_category ON film.film_id=film_category.film_id
24
24
 
25
- JOIN category ON film_category.category_id = category_category_id
25
+ JOIN category ON film_category.category_id = category.category_id
26
26
 
27
27
  WHERE category.name = '検索したいカテゴリの名前';
28
28
 

1

追記

2021/02/17 11:44

投稿

gentaro
gentaro

スコア8947

test CHANGED
@@ -5,3 +5,27 @@
5
5
 
6
6
 
7
7
  結合した結果に対してWHEREでカテゴリのIDなりで絞り込みをかければ要件は十分満たせるでしょう。
8
+
9
+
10
+
11
+ ### 追記
12
+
13
+ なんか面倒なんでたぶんこれが答えだろうと思うの書いとくわ。
14
+
15
+
16
+
17
+ ```SQL
18
+
19
+ SELECT title
20
+
21
+ FROM film
22
+
23
+ JOIN film_category ON film.film_id=film_category.film_id
24
+
25
+ JOIN category ON film_category.category_id = category_category_id
26
+
27
+ WHERE category.name = '検索したいカテゴリの名前';
28
+
29
+ ```
30
+
31
+ カテゴリのIDで検索するならcategoryテーブルまで結合する必要はないけど、名前で検索したいなら必要。