返回   CHF站长论坛 > 特色讨论区 > 帝国(Ecms)交流专栏

帝国(Ecms)交流专栏 帝国内容管理系统(Ecms)官方技术支持/BUG反馈/发展建议/模板。[官方]

双至强仅二千,企商在线,最早租用商 魔兽世界私服 魔兽世界私服 亿恩1元帮您升级服务器! 天龙八部私服 完美世界私服 新开传奇私服
传奇私服 热血江湖私服 仙境私服 天龙八部私服 魔域私服 魔域私服 新开传奇私服 魔域私服 传奇私服
发表新主题 回复
 
主题工具 主题评分 显示模式
旧 2006-07-09, 00:33   #1 (页面定位)
harbinbeer
 
harbinbeer 的头像
 
注册日期: 2006-06-10
帖子: 88
harbinbeer 是普普通通的会员
默认 删除标题重复的条目(保留一条)

思路:
1.以phome_ecms_news表为基础,建立相同结构的临时表一份(唯一不同的是以title为主键,这样标题就不会重复)
2.将phome_ecms_news内容导入新表,在导入过程中,自动抛弃标题相同(也就是title主键相同)的条目
3.将phome_ecms_news清空
4.将临时表内容导回到phome_ecms_news

sql语句:

/****建立临时表(此语句摘抄于ecms安装文件,并稍加改动——主要是设置title为主键,注意斜体部分)****/
create table phome_wm_mjj (id int(11) NOT NULL , classid smallint(6) NOT NULL, onclick int(11) NOT NULL, newspath varchar(50) NOT NULL, keyboard varchar(255) NOT NULL, keyid varchar(255) NOT NULL, userid int(11) NOT NULL, username varchar(30) NOT NULL, ztid text NOT NULL, checked tinyint(1) NOT NULL, istop tinyint(4) NOT NULL, truetime int(11) NOT NULL, ismember tinyint(1) NOT NULL, dokey tinyint(1) NOT NULL, userfen int(11) NOT NULL, isgood tinyint(1) NOT NULL, titlecolor varchar(10) NOT NULL, titlefont varchar(255) NOT NULL, titleurl varchar(200) NOT NULL, filename varchar(60) NOT NULL, filenameqz varchar(28) NOT NULL, fh tinyint(1) NOT NULL, groupid smallint(6) NOT NULL, newstempid smallint(6) NOT NULL, plnum int(11) NOT NULL, firsttitle tinyint(1) NOT NULL, checkuser text NOT NULL, docheckuser text NOT NULL, viewcheckuser text NOT NULL, returncheck tinyint(1) NOT NULL, notdocheckuser text NOT NULL, totaldown int(11) NOT NULL, title varchar(200) NOT NULL, newstime datetime DEFAULT '0000-00-00 00:00:00' NOT NULL, titlepic varchar(200) NOT NULL, wplay tinyint(1) NOT NULL, ftitle varchar(200) NOT NULL, smalltext text NOT NULL, writer varchar(30) NOT NULL, befrom varchar(60) NOT NULL, newstext mediumtext NOT NULL, closepl tinyint(1) NOT NULL, havehtml tinyint(1) NOT NULL, PRIMARY KEY (title), KEY classid (classid));
/****将原有数据导入临时表(这里的关键是ignore,没有这个是不能完整导入滴,注意斜体部分)****/
insert ignore into phome_wm_mjj select distinct * from phome_ecms_news;
/****清空原数据表****/
truncate phome_ecms_news;
/****将临时表数据复制到原表****/
insert into phome_ecms_news select distinct * from phome_wm_mjj;
/****清空临时表(可选)****/
truncate phome_wm_mjj;
/****或删除临时表(可选)****/
drop table phome_wm_mjj;

在我机器上测试成功,环境win2003+php4.4+mysql4.0.2.6

按照这个思路,可以将所有mysql数据库中特定字段重复的条目过滤掉

特别注意:
实例中的临时表名phome_wm_mjj请替换成自己需要的名字,否则有人自杀或者被人追杀都不太好
harbinbeer 当前离线   回复时引用此帖
旧 2006-07-09, 05:40   #2 (页面定位)
极品蜗牛
 
极品蜗牛 的头像
 
注册日期: 2005-10-20
帖子: 675
极品蜗牛 是一个将要出名的人极品蜗牛 是一个将要出名的人极品蜗牛 是一个将要出名的人极品蜗牛 是一个将要出名的人极品蜗牛 是一个将要出名的人极品蜗牛 是一个将要出名的人
默认

谢谢,暂时用不上...


 
网不易
 
极品蜗牛 当前离线   回复时引用此帖
旧 2006-07-09, 09:44   #3 (页面定位)
zmnet
 
注册日期: 2006-05-03
帖子: 7332
zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就zmnet 有着超越历史的辉煌成就
默认

不错,收藏以下
zmnet 当前离线   回复时引用此帖
旧 2006-07-09, 09:45   #4 (页面定位)
禾火木风
 
禾火木风 的头像
 
注册日期: 2006-03-15
帖子: 2057
禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人禾火木风 是一个将要出名的人
默认

收藏。。。。正需要
禾火木风 当前离线   回复时引用此帖
旧 2006-07-23, 02:21   #5 (页面定位)
天天都想要你的爱,我的心由你猜
封禁用户
 
注册日期: 2006-05-29
帖子: 63
天天都想要你的爱,我的心由你猜 是普普通通的会员
默认

啊哦
天天都想要你的爱,我的心由你猜 当前离线   回复时引用此帖
旧 2006-08-31, 11:07   #7 (页面定位)
Kevin_Zhou©
 
Kevin_Zhou 的头像
 
注册日期: 2005-10-23
帖子: 10693
Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星Kevin_Zhou 绝对是天王巨星
默认

收藏,谢谢!
Kevin_Zhou 当前离线   回复时引用此帖
回复

书签

标签

主题工具
显示模式 对此主题评分
对此主题评分:



所有时间均为北京时间。现在的时间是 21:31