sql – 如何只保留一行表,删除重复的行?
发布时间:2021-01-25 07:18:57 所属栏目:MsSql教程 来源:网络整理
导读:我有一个表在Name列中有很多重复. ID 喜欢每个只保留一行. 以下列出了重复项,但我不知道如何删除 重复,只保留一个: SELECT name FROM members GROUP BY name HAVING COUNT(*) 1; 谢谢. 解决方法 请参阅以下问题: Deleting duplicate rows from a table. 从
|
我有一个表在Name列中有很多重复. ID
以下列出了重复项,但我不知道如何删除 SELECT name FROM members GROUP BY name HAVING COUNT(*) > 1; 谢谢. 解决方法请参阅以下问题: Deleting duplicate rows from a table.从那里改编的接受答案(这是我的答案,所以这里没有“盗窃”……): 假设您有一个唯一的ID字段,您可以以一种简单的方式执行此操作:您可以删除除ID之外的所有相同记录,但没有其名称的“最小ID”. 示例查询: DELETE FROM members
WHERE ID NOT IN
(
SELECT MIN(ID)
FROM members
GROUP BY name
)
如果您没有唯一索引,我的建议是简单地添加一个自动增量唯一索引.主要是因为它的设计很好,还因为它可以让你运行上面的查询. (编辑:百客网 - 百科网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 微软发布支持Exchange 2003的反垃圾邮件工具
- SQL分隔函数用法是什么?详解分隔函数示例
- SQL Server Bulk Insert 只需要部分字段时的技巧
- 修复网络错误 微软发WinXP Q812793补丁
- sql-server – 为什么使用int作为查找表的主键?
- sql-server – 使用LEFT JOIN或NOT EXISTS之间的最佳实践
- Red Hat Linux 9下周推出
- sql-server – 每次执行触发器编译吗?
- sql-server – 在特定时间出现在日志中的FlushCache消息
- sql-server-2005 – 从SQL Server 2008降级到2005
站长推荐
热点阅读

