29. 使用join查询方式找出没有分类的电影id以及名称

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

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

第一块 a 将film表与film_category连接,找出带有robot描述的film_id以及fc.category_id
第二块 b 将film_category与category连接,每种电影类型包含的电影数量 num,数量为零的不统计
a,b 以 category_id 连接查询,num>5并以b.name或者category_id分组,即可得出结果

select b.name,count(a.film_id) from
(
   select f.film_id,fc.category_id from film f join film_category fc
    on f.film_id = fc.film_id
    where f.description like '%robot%'
) a
join
(
    select fc.category_id,ca.name,count(fc.film_id) num from film_category fc 
    join category ca
    on fc.category_id = ca.category_id
    group by ca.category_id
    having num>=5
) b
on a.category_id=b.category_id 
where b.num>=5
group by b.name;
全部评论
你好,b表使用了group by关键字,那么select不就是只可以使用 group的字段或者聚合函数嘛?为何还写了ca.name(虽然结果是对的)可否给俺说说,谢谢您
点赞 回复 分享
发布于 2021-06-28 20:55

相关推荐

今天 20:14
已编辑
叮咚买菜
牛客吹哨人:建议细说...哨哥晚点统一更新到黑名单:不要重蹈覆辙!25届毁意向毁约裁员黑名单https://www.nowcoder.com/discuss/1317104
叮咚买菜稳定性 10人发布 投递叮咚买菜等公司10个岗位 >
点赞 评论 收藏
分享
Yushuu:你的确很厉害,但是有一个小问题:谁问你了?我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了😆
点赞 评论 收藏
分享
20 1 评论
分享
牛客网
牛客企业服务