最近由于工作需求,需要对一张百万计别数据的excel表进行数据去重。由于数据量过大,直接使用excel工具对其进行去重,会导致程序卡死,所以在此使用数据库进行去重操作。下面是我对excel数据进行去重的过程。
方法一
1、将excel导入数据库
(1) 打开navicat>>选择数据库>>点击导入向导
2、执行SQL语句
# 将excel中的所有列添加到一列,需要执行多次 insert into 新表(字段) select 字段1 from Sheet1 insert into 新表(字段) select 字段2 from Sheet1 # 查询 select count(DISTINCT 字段) from 表名
方法二
1、将excel导入数据库
2、新建一个数据表表,添加一个字段用来存放excel表所有字段数据
3、执行如下SQL语句
# 将excel中的所有列添加到一列,需要执行多次 insert into 新表(字段) select 字段1 from Sheet1 insert into 新表(字段) select 字段2 from Sheet1 ...... # 查询没有重复的条数 select test,count(*) as a from test where test <> "" GROUP BY test HAVINg a=1
推荐使用第二种方式,执行更快。



