题解 | 网易云音乐推荐(网易校招笔试真题)

网易云音乐推荐(网易校招笔试真题)

https://www.nowcoder.com/practice/048ed413ac0e4cf4a774b906fc87e0e7

SELECT
    m.music_name
FROM
    music m -- 因为最终输出的是歌名,所以将music作为主表
    JOIN music_likes ml ON m.id = ml.music_id
    JOIN follow f ON ml.user_id = f.follower_id
WHERE
    f.user_id = 1 -- 筛选出 user_id = 1 关注的人
    AND ml.music_id NOT IN (
        SELECT
            music_id
        FROM
            music_likes
        WHERE
            user_id = 1
    ) -- 排除 user_id = 1 已经喜欢的音乐
GROUP BY
    m.id,
    m.music_name -- 去重
ORDER BY
    m.id ASC; -- 按音乐 id 升序排列

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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