Chinaunix首页 | 论坛 | 博客
  • 博客访问: 688161
  • 博文数量: 34
  • 博客积分: 4020
  • 博客等级: 上校
  • 技术积分: 367
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-05 16:22
文章分类

全部博文(34)

文章存档

2010年(1)

2009年(16)

2008年(9)

2007年(8)

我的朋友

分类: 数据库开发技术

2007-06-27 12:48:58

哥们儿叫我帮忙:有一excel文件要导入到MSDE中(速达软件),但总是报“品名”有重复,使用自带的工具每次只能发现一条处理一条,于是求助于我,下面是我主要的处理步骤:
(1)将excel数据导入到access的表中(不要使用链接表,此类表不支持delete);
用到的几个字段说明:
货品编码  int      唯一索引
品名     char(20)

(2)先将重复数据移动到临时表
select * into temptab
from sheet1
where 品名 in
(
SELECT t1.品名 FROM sheet1 t1
GROUP BY t1.品名 HAVING count(*)>1
);

(3)删除重复数据,只保留一条
delete from temptab
where 货品编码<( select max(货品编码) from temptab t1 where t1.品名=temptab.品名);

(4)删除原表中内所有重复数据
select * into temptab
from sheet1
where 品名 in
(
SELECT t1.品名 FROM sheet1 t1
GROUP BY t1.品名 HAVING count(*)>1
);

(5)将已经去除重复的记录插入到表中
insert into sheet1 select * from temptab;

(6)将sheet1表导出为excel文件

(7)完成

阅读(3873) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~