在SQL中删除重复记录(多种方法)

2016-01-29 16:46 4 1 收藏

在SQL中删除重复记录(多种方法),在SQL中删除重复记录(多种方法)

【 tulaoshi.com - SQLServer 】

   学习sql有一段时间了,发现在我建了一个用来测试的表(没有建索引)中出现了许多的重复记录。后来总结了一些删除重复记录的方法,在Oracle中,可以通过唯一rowid实现删除重复记录;还可以建临时表来实现...这个只提到其中的几种简单实用的方法,希望可以和大家分享(以表employee为例)。

SQL desc employee

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

 Name                                      Null?    Type
 ----------------------------------------- -------- ------------------

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

emp_id                                                NUMBER(10)
emp_name                                           VARCHAR2(20)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

salary                                                  NUMBER(10,2)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

可以通过下面的语句查询重复的记录:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

SQL select *

来源:http://www.tulaoshi.com/n/20160129/1499494.html

延伸阅读
标签: 电脑入门
在Excel中录入数据后,我们一般用高级筛选来处理删除重复的记录,Excel2007保留了这个功能,同时又增加了一个删除重复项按钮,使操作更加简单、灵活。 一、传统方法:使用高级筛选 步骤如下: 1.单击数据区,选中其中的任一个单元格。如果只是针对其中部分字段和记录进行筛选,可先选中这部分区域。注意:只对连续选中的矩形区域有效。 2....
标签: SQLServer
  select distinct * into #table_name from table_name delete from table_name select * into table_name from #table_name drop table #table_name 与此相关的是“select into”选项,可以在数据库属性 对话框中,勾起来此项,或者在Query Analyzer中执行 execute sp_dboption 'db_name','select into','true' 开启。默认值是关闭的。...
在使用 mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰了很久,用distinct不能解决的话,我只有用二重循环查询...
我们可以通过下述方法删除重复记录: 例:表名:dbo.品种描述$,字段包括:ID_PK,品种名称,性状标准编号,代码,首先创建一个和原表结构一样的表: 代码如下: select * into tmpA from dbo.品种描述$ where 1=2--创建完毕 在数据表中,品种名称,性状标准编号这两个字段不能有重复值,执行下述脚本: declare @VarietyName nvarchar(255), ...
下面我们来看下,如何利用它来删除一个表中重复记录: 代码如下: If Exists(Select * From tempdb.Information_Schema.Tables Where Table_Name Like '#Temp%') Drop Table #temp Create Table #temp ([Id] int, [Name] varchar(50), [Age] int, [Sex] bit default 1) Go Insert Into #temp ([Id] , [Name] , [Age] , [Sex] ) Values(1,'J...