帝国论坛帝国网站管理系统交流区帝国CMS使用交流[原创]一次性批量删除重复信息并保留一条的SQL-所有版本通用(申精) 【本版专题贴子】  
 1/3     1 2 3 ›› ›|
主题:[原创]一次性批量删除重复信息并保留一条的SQL-所有版本通用(申精) [加入收藏夹]   

www801225
用户头衔:进士

精华贴   :0
发贴数   :994
经验值   :3453
注册时间:2007-12-27
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
[原创]一次性批量删除重复信息并保留一条的SQL-所有版本通用(申精)
经过我两天三夜的努力,终于把这个的SQL搞出来,绝对可用,我是在MYSQL5.0上测试的,请各位放心使用
帝国后台那个查出来后,得25条删一下,如果重复几万条,得累死你

还有个严重问题,当你重复8万条后,使用后台的“查询重复记录” 就会出错,因为我是重了将近8万数据(采集中断造成的),后台的“查询重复记录”都不好使了(不知道是不是帝国ECMS的BUG?)

所以我把它放出来,申请一个精华,希望版主考虑!!!!


第一步:先建立一个临时表 create table tmp as select min(id) as col1 from phome_ecms_表 group by title;
第二步:删除重复,并保留一条信息 delete from phome_ecms_表 where id not in (select col1 from tmp);
第三步:删除临时表:drop table tmp;


申明一下:上面三步可以一次性运行完成的。也可以分三步一次运行一个命令,所以我说他简单明了,不管你重复多少次,均可一次性完成操作。


申精!!!!!!!!!!!!

[该贴被修改 3 次,最后修改时间 2009-09-02 11:13:32 ]



2009-08-27 17:25:34 已设置保密 顶部 回复 引用 报告 编辑 删除

www801225
用户头衔:进士

精华贴   :0
发贴数   :994
经验值   :3453
注册时间:2007-12-27
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

怎么都没人顶啊,等你们遇到相同的情况就知道他的用处有多大了




2009-08-27 23:05:17 已设置保密 顶部 回复 引用 报告 编辑 删除

www801225
用户头衔:进士

精华贴   :0
发贴数   :994
经验值   :3453
注册时间:2007-12-27
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]

下次我在也不发了。




2009-08-28 01:29:49 已设置保密 顶部 回复 引用 报告 编辑 删除

ft543550
用户头衔:书生

精华贴   :0
发贴数   :2
经验值   :27
注册时间:2009-07-25
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

呵呵 虽然现在还用不到 但是迟早会有用的 先帮你顶上 希望有更多的经验分享



大家多多支持偶的网站:56yule.net无聊娱乐网
2009-08-28 01:47:31 已设置保密 顶部 回复 引用 报告 编辑 删除

huilan
用户头衔:探花

精华贴   :0
发贴数   :3947
经验值   :9790
注册时间:2009-02-04
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

好东西,收藏




2009-08-28 09:14:31 已设置保密 顶部 回复 引用 报告 编辑 删除

gyxin123
用户头衔:进士

精华贴   :0
发贴数   :1032
经验值   :3901
注册时间:2008-02-25
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

不用新建表,直接在后台执行一下这条语句就可以
delete 表 from 表, (select id from 表 group by 重复字段名 having count(*)>1 ) as t2 where 表.id=t2.id
此语句可以重复执行,每执行一次将删除相同记录中的一条重复记录(比如某一条信息重复记录有10条,那就执行9次,大于9次也没有关系的哈)

给我加精吧



www.linyi21.com
2009-08-28 16:08:02 已设置保密 顶部 回复 引用 报告 编辑 删除

188cn
用户头衔:探花

精华贴   :0
发贴数   :9148
经验值   :21447
注册时间:2008-10-25
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

办法不错




2009-08-28 16:41:31 已设置保密 顶部 回复 引用 报告 编辑 删除

dzbz
用户头衔:秀才

精华贴   :0
发贴数   :100
经验值   :440
注册时间:2008-02-05
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

同意加精



电子标准网
2009-08-28 21:25:56 已设置保密 顶部 回复 引用 报告 编辑 删除

dashunfa
用户头衔:书生

精华贴   :0
发贴数   :14
经验值   :37
注册时间:2009-08-26
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

不错,够详细。



獭兔 肉牛
2009-08-28 22:00:58 已设置保密 顶部 回复 引用 报告 编辑 删除

hahaha
用户头衔:进士

精华贴   :0
发贴数   :777
经验值   :2186
注册时间:2008-10-14
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 10 楼]

支持




2009-08-29 00:09:13 已设置保密 顶部 回复 引用 报告 编辑 删除
 1/3     1 2 3 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1