Unicorns / VO OA 面试真题解析:SQL 查找重复记录并删除(duplicate records)

32次阅读
没有评论

How do you write a SQL query to find duplicate records in a table and how do you remove them?

这道题考察的是 SQL 中重复数据的查找与清理,核心思路通常是先按业务键分组统计重复行数,再结合窗口函数或自连接定位每一组中的保留记录与待删除记录。常见做法包括使用 <code>GROUP BY</code> + <code>HAVING COUNT(*) &gt; 1</code> 找出重复键,或者用 <code>ROW_NUMBER()</code> 按分组排序后删除序号大于 1 的记录,从而只保留每组中的一条。回答时要说明“重复”的判断依据,以及删除前如何先确认要保留哪一条,例如按最小 id、最新时间戳或其他规则保留唯一记录。

正文完
 0