SQL重复记录处理(查找,过滤,删除)

作者:我本有心 时间:2008-11-17 20:47:00 

注:此处“重复”非完全重复,意为某字段数据重复

  HZT表结构

ID int
Title nvarchar(50)
AddDate datetime

  数据



  一. 查找重复记录

  1. 查找全部重复记录

Select * From 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1)



  2. 过滤重复记录(只显示一条)

Select * From HZT Where ID In (Select Max(ID) From HZT Group By Title)


注:此处显示ID最大一条记录

  二. 删除重复记录

  1. 删除全部重复记录(慎用)

Delete 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1)



  2. 保留一条(这个应该是大多数人所需要的)

Delete HZT Where ID Not In (Select Max(ID) From HZT Group By Title)


  注:此处保留ID最大一条记录

标签:sql,删除,表
0
投稿

猜你喜欢

  • 关于Ajax在浏览器中产生前进后退的实现方法

    2010-01-29 13:01:00
  • JavaScript caller与callee属性

    2009-01-19 13:39:00
  • 如何结束一个session变量

    2009-08-12 19:20:00
  • 重新发现HTML表格

    2009-12-02 09:47:00
  • 卸载VS2011 Developer Preview后Sql Server2008 R2建立数据库关系图报“找不到指定的模块”错误的解决方法

    2011-11-03 16:49:09
  • 查询数据表中的记录(SELECT)

    2009-02-27 16:06:00
  • RedHat 9.0下用rpm包安装mysql

    2008-11-22 12:28:00
  • 讲解设计应用程序时避免阻塞的八个准则

    2009-01-04 14:16:00
  • 用javascript做拖动层布局的思路

    2008-05-30 13:38:00
  • asp如何显示一个等待或欢迎信息?

    2010-06-08 09:39:00
  • CSS扫盲(一): padding

    2009-08-04 17:58:00
  • asp禁止站外盗链、判断星期几方法

    2007-10-02 12:58:00
  • asp如何在网站上提供音乐下载?

    2010-06-22 21:14:00
  • 960网格系统

    2009-02-17 12:22:00
  • 小议sqlserver数据库主键选取策略

    2011-10-24 19:51:30
  • JavaScript风格要素

    2007-10-25 16:57:00
  • CSS中的标点符号用法

    2008-10-03 11:58:00
  • ORACLE LATERAL-SQL-INJECTION 个人见解

    2009-03-04 10:34:00
  • 浅议Wap网页设计中的锚点链接

    2010-12-17 12:41:00
  • asp三天学好ADO对象之第三天

    2008-10-09 12:53:00
  • asp之家 网络编程 m.aspxhome.com