28.【较难】查找描述信息中包含robot的电影对应的分类名称以及电影数目,而且还需要该分类包含电影总数量>=5部
查找描述信息中包含robot的电影对应的分类名称以及电影数目,而且还需要该分类对应电影数量>=5部
http://www.nowcoder.com/questionTerminal/3a303a39cc40489b99a7e1867e6507c5
一开始我是这样写
select c.name as '分类名称category.name', count(f.film_id) as '电影数目count(film.film_id)' from film f,category c,film_category fc where f.film_id=fc.film_id and fc.category_id=c.category_id and f.description like '%robot%' group by c.name having count(fc.category_id)>=5
很显然对蓝色标记部分理解不对
应该先找到每个电影分类下电影总数量大于5的category_id,修改如下
正确代码
select c.name, count(fc.film_id) from film f,category c,film_category fc where f.description like '%robot%' and f.film_id=fc.film_id and fc.category_id=c.category_id and c.category_id in (select category_id from film_category group by category_id having count(film_id)>=5)
数据分析阿宇君的SQL题解 文章被收录于专栏
数据分析的SQL题目