查找库中记录重复的 求助:显示一张表中内容重复的记录 有主键ID 如何做判断 谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 参考一下http://www.365master.com/manage/database/sqlserver/20080504/34392.shtml 看你重复的依据是什么?如果是某一列那么就用group by 后,再用having count(*)select column1 from t group by column1 having count(*)>1多列的话,就自己添加了 内容 重复 是 整个 还是一个字段 一般 用WITH FUCK AS(SELECT * FROM TABLE AJOIN BON A.FIELD=B.FIELD)DELETE FROM FUCK 或者 WITH FUCK AS(SELECT *FROM TABLE A WHERE FIELD < (SELECT MAX(FIELD) FROM TABLE BWHERE A.ID=B.ID)DELETE FROM FUCK --剔除的话,整个记录重复可以用SELECT DISTINCT * FROM TABLE--找到有重复的DELETE * FROM TABLE A WHERE EXISTS(SELECT 1 FROM TABLE B WHERE A.ID=B.ID AND A.FIELD=B.FIELD) 我按除主键外全部字段重复调试完成:有表结构如下:id name course score1 王三 英语 802 王三 语文 783 王三 数学 904 李四 英语 655 李四 语文 546 李四 数学 967 张五 英语 908 张五 数学 809 张五 语文 6310 王三 数学 9011 王三 数学 903,10,11三条记录除主键外完全重复第一步:分组查询出重复的信息记录 select [name],course,score into #T from stu group by [name],course,score having count(*)>1 查询结果如下: #T 表中有数据为:/*----------------------- name course score 王三 数学 90第二步:两表连接查询语句:select stu.* from stu,#T where stu.[name]=#T.[name] and stu.course=#T.course and stu.score=#T.score 查询结果如下:/*--------------------------------------- id name course score 3 王三 数学 90 10 王三 数学 90 11 王三 数学 90如果记录太多的话,那就够麻烦的了.. c#学习用碰到的问题,类,接口,委托应该分别在什么时候用,属性和索引器什么时候用,什么时候需要用get,set返回和重写他们的值,谢谢 排序随机数方法? 在vista下 如何用c#复制一个文件 WINFORM下,如何取得JS函数的值?不用webbroser SQL里的DateTime类型处理,求教 刚学c#看点什么好 散分!30分求一简单问题 C#编写了一个ACCESS-查询分析器... 磁卡读写的问题 如何獲去進程得用戶名和網域? 数据库加载时带进度条功能 如何用流获得某文件的大小
http://www.365master.com/manage/database/sqlserver/20080504/34392.shtml
select column1 from t group by column1 having count(*)>1
多列的话,就自己添加了
一般 用WITH FUCK AS
(
SELECT * FROM TABLE A
JOIN B
ON A.FIELD=B.FIELD)
DELETE FROM FUCK
(
SELECT *FROM TABLE A WHERE FIELD < (SELECT MAX(FIELD) FROM TABLE B
WHERE A.ID=B.ID
)
DELETE FROM FUCK
--剔除的话,整个记录重复
可以用
SELECT DISTINCT * FROM TABLE
--找到有重复的
DELETE * FROM TABLE A WHERE EXISTS(SELECT 1 FROM TABLE B WHERE A.ID=B.ID AND A.FIELD=B.FIELD)
我按除主键外全部字段重复调试完成:
有表结构如下:
id name course score
1 王三 英语 80
2 王三 语文 78
3 王三 数学 90
4 李四 英语 65
5 李四 语文 54
6 李四 数学 96
7 张五 英语 90
8 张五 数学 80
9 张五 语文 63
10 王三 数学 90
11 王三 数学 903,10,11三条记录除主键外完全重复
第一步:分组查询出重复的信息记录
select [name],course,score into #T from stu group by [name],course,score having count(*)>1
查询结果如下:
#T 表中有数据为:
/*-----------------------
name course score
王三 数学 90第二步:两表连接查询语句:
select stu.* from stu,#T where stu.[name]=#T.[name] and stu.course=#T.course and stu.score=#T.score
查询结果如下:
/*---------------------------------------
id name course score
3 王三 数学 90
10 王三 数学 90
11 王三 数学 90
如果记录太多的话,那就够麻烦的了..