INSERT IGNORE语句可以在插入数据时自动忽略重复的记录,只插入新的记录。使用该语句的前提是需要给表添加唯一索引,下面是一个示例:
首先创建一个测试表,添加唯一索引:
ameame,age));
然后向表中插入数据:
ame’,20),(‘Jack’,22);
执行结果为:
ing (0.01 sec)ings: 1
可以看到,插入了3条记录,其中有1条重复记录被忽略。
方法二:使用Mysql的LOAD DATA语句
LOAD DATA语句可以从文件中导入数据到表中,同时可以进行去重操作。需要使用到Mysql的REPLACE关键字,它可以在插入数据时,如果发现记录已经存在,就先删除原有记录,再插入新的记录。下面是一个示例:
假设有一个名为test.txt的文件,内容如下:
Jerry,21,20
Jack,22
使用LOAD DATA语句导入数据:
ame,age) SET id=NULL;
执行结果为:
ing (0.00 sec)ings: 1
可以看到,插入了3条记录,其中有1条重复记录被删除。
需要注意的是,使用LOAD DATA语句导入数据时,需要给表添加唯一索引,
在Mysql导入文件时,大家可以使用INSERT IGNORE语句或LOAD DATA语句进行去重操作。需要注意的是,使用这两种方法时,都需要给表添加唯一索引,