Sqlserver 2000 数据库表中删除重复记录(仅保留一条)
来源:互联网 发布:斗地主机器人算法 编辑:程序博客网 时间:2024/05/22 00:22
以前在面试中经常被问到怎么删除数据库中重复记录,但是因为缺乏真实场景,即使在网上看到相关信息也是看的云里雾里,今天在工作中就遇到相同情况,经过网上查找相关材料,把自己解决方式整理分享给大家
描述:
表名:Table1
字段 colu_id,colu_1,colu_2,colu3
说明:表中没有主键,部分记录中存在重复值,但并不是完全意义上的重复,只是其中某字段重复,这里是colu_id有重复
解决方案:
1、 建一张临时表存储,表结构和Table1一致,因为我的table1 字段值太多,我直接采用下面的语句复制Table1表
Select * into temp_table1 from table1
2、 清空临时表数据
Delete from temp_table1
3、 为该表加上索引,并使其忽略重复的值
方法是在企业管理器中找到刚才建的临时表temp_table1,鼠标右击——所有任务——管理索引,选择新建,弹出如下对话框:
按照上图红色标记设置选项。 注意:新建索引要勾选现在是重复记录,但是准备删除的字段,比如我在这里选择的是colu_id 1、 copy table1表数据到temp_table1中,此时查询器会如下提示: 服务器: 消息 3604,级别 16,状态 1,行 1 已忽略重复的键 此时临时表temp_table1列colu_id列中已经没有重复记录 2、 将临时表(temp_teable1)数据拷贝到原来的表(table1)中 删除table1中数据: delete from table1 将临时表(temp_table1)数据插入到(table1)中: Insert into table1 select * from temp_table1 3、 删除临时表:drop table temp_table1 4、 操作结束,为防止操作失误,请提前备份表数据
- Sqlserver 2000 数据库表中删除重复记录(仅保留一条)
- 在oracle数据库表中删除所有重复的数据,仅保留一条记录
- Sqlserver删除重复记录只保留一条
- 删除表中重复的记录,只保留一条
- 删除数据库中重复的记录(保留一条)-oracle、mysql版
- SqlServer-删除某一个字段重复的记录,只保留一条
- sql 删除表中多余的重复记录(多个字段),只保留一条记录
- sql 删除表中多余的重复记录(多个字段),只保留一条记录
- sql 删除表中多余的重复记录(多个字段),只保留一条记录
- oracle删除重复记录保留一条记录
- mysql删除无主键表中重复记录(只保留一条记录)
- MySQL删除表中多余的重复记录,只保留一条记录
- SQL 删除数据库中重复数据 保留一条
- 删除数据库中重复的信息,只保留一条
- 如何删除表中的重复记录只保留其中一条?
- mysql 删除表中的重复记录,只保留其中一条
- 删除表中的重复记录只保留其中一条
- 如何删除表中的重复记录只保留其中一条?
- 2009.03.27
- 一个老程序员的心里话
- 斯欧SOA转换套件 —打造IT敏捷性
- 第三方支付——综合业务系统批处理流程
- 调用带参数的exe
- Sqlserver 2000 数据库表中删除重复记录(仅保留一条)
- 在linux下开发常用命令..
- ASP.NET GridView中鏈結打開模式窗口,當模式窗口關閉時,刷新父頁.
- ext的form提交
- Function: Generate file(txt,htm,xls etc.) from HTML file
- ext远程验证用户名是否存在
- Ajax.net调用时客户端报错
- 日期显示
- ext的border布局