这道题目要求我们找出没有分类的电影的电影ID和电影名称。我们要做的事情如下:
1. 确定总体问题
我们需要找出没有分类的电影,并返回这些电影的电影ID和电影名称。即从电影信息表和电影分类表中提取数据,通过电影ID进行左连接,并筛选出那些没有分类的电影。
2. 分析关键问题
- 连接表:将
film
和film_category
表进行左连接,以便获取每个电影的分类信息。 - 筛选没有分类的电影:通过条件过滤,找出没有分类的电影。
3. 解决每个关键问题的代码及讲解
步骤1:连接表
我们使用LEFT JOIN
将film
和film_category
表连接起来:
from
film f
left join film_category fm on fm.film_id = f.film_id
LEFT JOIN film_category fm ON fm.film_id = f.film_id
:通过电影ID进行左连接,以便获取每个电影的分类信息。
步骤2:筛选没有分类的电影
我们使用WHERE
子句筛选出没有分类的电影:
where
fm.category_id is null
WHERE fm.category_id IS NULL
:筛选出那些没有分类的电影。
完整代码
select
f.film_id,
f.title
from
film f
left join film_category fm on fm.film_id = f.film_id
where
fm.category_id is null;