28

查找描述信息中包括robot的电影对应的分类名称以及电影数目,而且还需要该分类对应电影数量>=5部

http://www.nowcoder.com/questionTerminal/3a303a39cc40489b99a7e1867e6507c5

题目:查找描述信息中包括robot的电影对应的分类名称以及电影数目,而且还需要该分类对应电影数量>=5部

这题连输出格式都不给。不浪费时间,直接看答案。看懂这道题就算过了。

方法:先根据film_category表构建分类下电影数大于5部的分类电影表,再进行多表用WHERE联查和GROUP BY分类
SELECT c.name, COUNT(fc.film_id)
FROM film AS f, film_category AS fc, category AS c,
(select category_id
FROM film_category
GROUP BY category_id
HAVING count(film_id)>=5) AS cc
WHERE f.description LIKE '%robot%'
AND f.film_id = fc.film_id
AND c.category_id = fc.category_id
AND c.category_id=cc.category_id
GROUP BY c.category_id;
注意:最后的GROUP BY c.category_id是一定要的

改进:事实上,查出大于5部电影对应的分类表,放在WHERE里做不相关子查询就可以:
SELECT c.name, COUNT(fc.film_id)
FROM film AS f, film_category AS fc, category AS c
WHERE f.description LIKE '%robot%'
AND f.film_id = fc.film_id
AND c.category_id = fc.category_id
AND c.category_id IN (select category_id
FROM film_category
GROUP BY category_id
HAVING count(film_id)>=5)
GROUP BY c.category_id;

全部评论
为什么不写成99版语法呢?
点赞 回复 分享
发布于 2021-06-04 23:04

相关推荐

当初高考报计算机真是造大孽了啊!卷的飞起!哪都是计算机的人,考研,考公,找工作全他奶的计算机的人,太难了。国企也是。关键一届比一届卷,造大孽了!
_Lyrics_:因为计算机,没有体验到快乐的大学研究生时光,好不容易修完课程就要出去实习,看着别人专业可以一起搓麻将,游山玩水,而我却要自己一个人住在北上不到十平米的出租屋,每天两点一线
点赞 评论 收藏
分享
Ncsbbss:又想干活又想要工资,怎么什么好事都让你占了
点赞 评论 收藏
分享
评论
6
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务