软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件开发专栏>>数据库>>正文
如何在SQL Server中快速删除重复记录?
文章出处:博客 作者:骆驼刺的专栏 发布时间:2007-02-07
       我们有时候会碰到需要删除重复记录,一般实现删除重复记录可以写一段代码,用游标遍历,从而删除记录,但如果记录条数比较多,用游标的方法删除需要执行非常长的时间。
        一般情况下,我们会有两种情况的删除操作,一种是完全重复的记录,所有字段都重复的情况,另一种是部分关键字段重复的记录,其他字段不重复,或重复但可以忽略。
        第一种情况比较简单,可以使用如下的方法进行:
      
     select distinct * into #tmp from tablename
        drop table tablename
        select * into tablename from #tmp
        drop table # tmp

 第二种情况比较麻烦,以下是一种比较简单的做法:
             创建一个和源表一模一样的表。
              可以这么创建:select top 1 * into TableTemp from table
                                     delete from TableTemp
              为该表增加索引,并忽略重复的项
                                    sql
               复制信息到临时表:
                     sql语句如下:insert into TableTemp Select * from table
               不重复的记录已经存在临时表了,接下来你只要清空源表,并把临时表记录导入源表,删除临时表即可。
这种错误出现的原因是数据库设计的时候缺少了约束关系,在创建数据库的时候只要简单的增加约束关系就可以避免这种错误!


站内搜索
相关文章
◎ORACLE自动备份方法
◎MySQL数据库编码问题全面解析
◎Mysql配置技巧
◎实现ClearQuest数据库(SQL Server2000)迁移
◎oracle9i的安装过程
◎两个SQL Server维护技巧
◎微软工程师讲解 SQL Server 阻塞
◎Oracle 操作经验谈
◎测试Oracle在不同系统中的IO能力
◎用sp_lock诊断SQL Sever的性能问题
◎MSSQL2005的新功能创建数据库快照
◎SQL与Oracle、DB2的性能比较
◎精妙Sql语句
◎SQL Server连接中的四个最常见错误
◎mysql的备份
◎管理常用SQL语句
◎SQL Server应用程序中的高级SQL注入
◎实例说明sql优化的重要性
◎SQLServer性能分析参数
◎Oracle的入门心得
◎SQL Server 2005——下一代的数据管理和分析软件
◎MySQL数据库函数详解
◎数据库设计三大范式应用实例剖析
◎大中型数据库数据导入中存在的部分问题及对策
◎ORACLE 常用脚本(4)
◎ORACLE 常用脚本(3)
◎ORACLE 常用脚本(2)
◎ORACLE 常用脚本(1)
◎ORACLE性能调优原则
◎oracle中关于null排序的问题
◎mysql数据库优化
◎把Access数据库移植到SQL
◎如何把Access的数据导入到Mysql
◎数据库设计三大范式应用实例剖析
◎SQL Server 2000 JDBC驱动的完整安装及测试说明
◎论数据库技术的发展史
◎MySQL索引分析和优化
◎检测和解决 SQL Server 2000 SP 4 中的延迟和阻塞 I/O 问题
◎几大数据仓库方案特性比较
◎SQL语句导入导出大全
◎从SQL Server 向Oracle 8迁移的技术实现方案
◎SQL Server连接中三个常见的错误分析
◎数据库性能分析及调整一例
◎手动建立Oracle9i数据库
◎如何连接SQL Server与Oracle数据库
◎利用 DBCA 建立 Oracle9i 数据库
◎Oracle9i 数据库实体结构
◎如何安装Oracle 9i Enterprise Edition for Linux
◎DB2数据库的安装
◎DB2/Sybase/Oracle的比较
热门文章
◎SQL Server 2000 JDBC驱动的完整安装及测试说明
◎ORACLE 常用脚本(3)
◎如何连接SQL Server与Oracle数据库
◎ORACLE 常用脚本(1)
◎SQL语句导入导出大全
◎管理常用SQL语句
◎如何安装Oracle 9i Enterprise Edition for Linux
◎精妙Sql语句
◎Oracle的入门心得
◎DB2/Sybase/Oracle的比较
◎手动建立Oracle9i数据库
◎ORACLE 常用脚本(2)
◎数据库性能分析及调整一例
◎ORACLE 常用脚本(4)
◎数据库设计三大范式应用实例剖析
◎利用 DBCA 建立 Oracle9i 数据库
◎ORACLE性能调优原则
◎SQLServer性能分析参数
◎实例说明sql优化的重要性
◎SQL与Oracle、DB2的性能比较
◎大中型数据库数据导入中存在的部分问题及对策
◎SQL Server连接中三个常见的错误分析
◎几大数据仓库方案特性比较
◎从SQL Server 向Oracle 8迁移的技术实现方案
◎Oracle9i 数据库实体结构
◎论数据库技术的发展史
◎SQL Server应用程序中的高级SQL注入
◎SQL Server 2005——下一代的数据管理和分析软件
◎SQL Server连接中的四个最常见错误
◎数据库设计三大范式应用实例剖析
◎两个SQL Server维护技巧
◎mysql数据库优化
◎微软工程师讲解 SQL Server 阻塞
◎检测和解决 SQL Server 2000 SP 4 中的延迟和阻塞 I/O 问题
◎oracle中关于null排序的问题
◎MySQL数据库函数详解
◎把Access数据库移植到SQL
◎Oracle 操作经验谈
◎DB2数据库的安装
◎如何把Access的数据导入到Mysql
◎MySQL索引分析和优化
◎mysql的备份
◎测试Oracle在不同系统中的IO能力
◎用sp_lock诊断SQL Sever的性能问题
◎MSSQL2005的新功能创建数据库快照
◎oracle9i的安装过程
◎ORACLE自动备份方法
◎Mysql配置技巧
◎MySQL数据库编码问题全面解析
◎实现ClearQuest数据库(SQL Server2000)迁移

Google提供的广告