SQL29题解:使用join查询方式找出没有分类的电影id以及名称

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

http://www.nowcoder.com/questionTerminal/a158fa6e79274ac497832697b4b83658

此类问题很明显采用外连接+where IS NULL过滤,或者内连接 NOT IN 取补集
方案1:外连接+where

SELECT f.film_id AS '电影id',f.title AS '名称'
    FROM film f
    LEFT JOIN film_category fc
    ON f.film_id = fc.film_id
    WHERE fc.category_id IS NULL

方案2:找出有分类的电影film_id的集合,NOT IN 反转得未分类电影作为where子查询

SELECT film_id AS '电影id',title AS '名称'
    FROM film
    WHERE film_id NOT IN (SELECT f.film_id FROM film f
                            INNER JOIN film_category fc
                            ON f.film_id = fc.film_id);
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-23 18:25
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-24 12:26
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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