`

SQL语句删除重复记录

 
阅读更多

问题:如何把具有相同字段的记录删除,只留下一条。
例如:表test里有id,name字段,如果有name相同的记录只留下一条,其余的删除。name的内容不定,相同的记录数不定。
用SQL语句删除重复记录的方法:

1、将重复的记录记入temp1表

select [标志字段id],count(*) into temp1 from [表名]
group by [标志字段id]
having count(*)>1


2、将不重复的记录记入temp1表

insert temp1
select [标志字段id],count(*) from [表名]
group by [标志字段id]
having count(*)=1


3、作一个包含所有不重复记录的表

select * into temp2 from [表名]
where 标志字段id in(select 标志字段id from temp1)


4、删除重复表:delete [表名]

5、恢复表
insert [表名]
select * from temp2


6、删除临时表
drop table temp1
drop table temp2

分享到:
评论

相关推荐

    四种SQL语句删除重复记录的方法

    ### 四种SQL语句删除重复记录的方法 在数据库管理中,经常会出现数据冗余的情况,特别是当数据量庞大时,这种现象更为普遍。对于重复记录的处理是维护数据库完整性和提高查询效率的重要手段之一。本文将详细介绍四...

    SQL语句查询重复记录大全

    ### SQL语句删除所有重复记录 #### 1. 删除重复记录的基本方法 - **基本思路**:通常的做法是先找出重复记录,然后使用`DELETE`语句删除它们。 - **SQL示例**: ```sql DELETE FROM people WHERE peopleId IN ( ...

    删除表中重复数据sql语句

    以上SQL语句能够帮助我们删除除了具有最小ROWID之外的所有重复记录。 3. **查找表中多余的重复记录(不含最小ROWID)** ```sql SELECT * FROM vita_ea WHERE (a.peopleId, a.seq) IN ( SELECT peopleId, seq ...

    使用Oracle查询并删除重复记录的SQL语句

    使用Oracle查询并删除重复记录的SQL语句 在实际应用中,删除重复记录是非常常见的操作,特别是在数据导入、数据整合和数据清洁等场景中。Oracle数据库提供了多种方式来查询和删除重复记录,本文将详细介绍这些方法...

    查询及删除重复记录的SQL语句.

    删除重复记录时,通常保留一个代表性的记录,例如保留 `ROWID` 最小的记录。可以使用以下 SQL 语句: ```sql DELETE from 表 WHERE (id) IN ( SELECT id FROM 表 GROUP BY id HAVING COUNT(id) > 1) AND ...

    删除数据表中重复记录

    本文将详细介绍如何在不同的数据库系统(如MySQL、SQL Server、Oracle等)中删除重复记录。 #### SQL删除重复记录的基本思路 删除重复记录的核心思想是先识别出哪些记录是重复的,然后通过某种方式将这些重复记录...

    sql查询重复记录语句

    删除重复记录是数据清理的重要步骤,以下是一种通用的删除所有重复记录的方法: ```sql DELETE FROM tableName WHERE colName IN (SELECT colName FROM tableName GROUP BY colName HAVING COUNT(*) > 1); ``` ...

    SQL语句删除数据表中重复的记录

    以下是如何使用SQL语句来删除数据表中重复记录的详细步骤。 首先,我们来看一个简单的例子,假设我们有一个名为`Repeat`的数据表,其中存在重复的记录。要删除这些重复的记录,但保留每个唯一组合的最新(最大`id`...

    sqlServer删除重复数据

    SQL Server 删除重复数据 SQL Server 删除重复数据是数据库管理中的一项重要任务。重复数据可能是完全重复的记录,也可能是部分关键字段重复...删除重复数据需要根据实际情况选择合适的方法,才能正确地删除重复记录。

    SQL语句实现删除重复记录并只保留一条

    本文将详细介绍如何使用SQL语句删除重复记录并仅保留一条。 首先,我们来看一种常见的实现方式,例如在`WeiBoTopics`表中删除重复记录并保留Id最大的一条。以下是一个SQL查询示例: ```sql DELETE FROM ...

    matlab中如何去掉数组中重复的值

    2. 使用 SQL 语句删除重复记录:rs = exec(conn, 'SELECT * FROM TABLE_NAME WHERE ID IN (SELECT MIN(ID) FROM TABLE_NAME GROUP BY REPEAT_FIELD)'); 其中,TABLE_NAME 是数据库表的名称,REPEAT_FIELD 是重复...

    sql删除表中重复记录方法

    这种方法通过创建两个临时表来辅助删除重复记录的过程。首先,通过`GROUP BY`和`COUNT(*)`函数找出重复的记录,并将这些记录的ID存储到临时表`temp1`中。接着,将不重复的记录也插入到`temp1`中。之后,创建一个新的...

    SQL删除重复行

    2. **删除重复记录**:保留每个`peopleId`的最小`rowid`,删除其他重复的行: ```sql DELETE FROM people WHERE peopleId IN ( SELECT peopleId FROM people GROUP BY peopleId HAVING COUNT(peopleId) > 1 ) ...

    sql查询重复记录方法大全

    - `rowid`用于唯一标识每条记录,从而能够更准确地删除重复记录。 #### 方法八:处理具有多个重复字段的记录 **SQL语句**: ```sql SELECT DISTINCT * INTO #Tmp FROM tableName; DROP TABLE tableName; SELECT * ...

    oracle删除重复数据的sql语句

    这条语句同样将删除除了每个peopleId和seq组合中ROWID最小的记录之外的所有重复记录。 综上所述,通过ROWID、GROUP BY和DISTINCT等多种方式,可以灵活有效地处理Oracle数据库中的重复数据问题。在实际应用中,可以...

    arcgis中的sql语句

    ### ArcGIS中的SQL语句详解 #### 一、SQL在ArcGIS中的角色与应用 SQL,全称为Structured Query Language,即结构化查询语言,是专为数据库设计的一种标准语言,用于管理和操作数据库中的数据。在ArcGIS环境中,SQL...

    基本SQL语句及PL/SQL语句

    标题中的“基本SQL语句及PL/SQL语句”涵盖了关系数据库管理中两个重要的概念:SQL(Structured Query Language)和PL/SQL(Procedural Language/SQL)。SQL是用于管理和处理关系数据库的标准语言,而PL/SQL是Oracle...

    查询和删除表中重复数据sql语句

    这条SQL语句用于查找`people`表中`peopleId`字段存在重复的所有记录。通过`GROUP BY`子句对`peopleId`进行分组,然后利用`HAVING COUNT(peopleId) > 1`条件筛选出那些计数大于1的分组,即`peopleId`重复的记录。 ##...

    基本的去重复sql语句

    这段SQL语句的主要作用是从`CUSTOM_INFO`表中删除重复记录,保留每组中`rowid`最大的一条记录。具体步骤如下: 1. **子查询**:`(SELECT MAX(rowid) FROM CUSTOM_INFO b WHERE a.sampleid = b.sampleid)`用来找出与...

Global site tag (gtag.js) - Google Analytics