题解 | SQL241 删除emp_no重复的记录,只保留最小的id对应的记录。

WITH t1 AS (
    SELECT 
        *,
        DENSE_RANK() OVER(PARTITION BY emp_no ORDER BY id ASC) AS ranking
    FROM titles_test 
),
t2 AS(
    SELECT 
        id,
        emp_no,
        title,
        from_date,
        to_date
    FROM t1
    WHERE ranking = 1
)
DELETE FROM titles_test WHERE id NOT IN (SELECT id FROM t2);

# 这道题本意就是删除操作,因此可以使用delete命令!

全部评论

相关推荐

认真搞学习:这么良心的老板真少见
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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