mysql 与 LOAD DATA INFILE 重复

mysql duplicates with LOAD DATA INFILE(mysql 与 LOAD DATA INFILE 重复)
本文介绍了mysql 与 LOAD DATA INFILE 重复的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用 LOAD DATA INFILE 时,是否有办法标记重复行,或将任何/所有重复行转储到单独的表中?

When using LOAD DATA INFILE, is there a way to either flag a duplicate row, or dump any/all duplicates into a separate table?

推荐答案

来自 加载日期 INFILE 文档:

REPLACE 和 IGNORE 关键字控制输入行的处理在唯一键值上重复现有行:

The REPLACE and IGNORE keywords control handling of input rows that duplicate existing rows on unique key values:

  • 如果您指定 REPLACE,则输入行将替换现有行.换句话说,主键或唯一索引的值与现有行相同的行.参见第 12.2.7 节,替换语法".李>
  • 如果您指定 IGNORE,则会跳过与唯一键值上的现有行重复的输入行.如果您不指定任一选项,则行为取决于是否指定了 LOCAL 关键字.如果没有 LOCAL,则在找到重复键值时会发生错误,并忽略文本文件的其余部分.对于 LOCAL,默认行为与指定 IGNORE 相同;这是因为服务器无法在操作过程中停止传输文件.

实际上,没有办法将重复记录重定向到不同的表.您必须将它们全部加载,然后创建另一个表来保存非重复记录.

Effectively, there's no way to redirect the duplicate records to a different table. You'd have to load them all in, and then create another table to hold the non-duplicated records.

这篇关于mysql 与 LOAD DATA INFILE 重复的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Execute complex raw SQL query in EF6(在EF6中执行复杂的原始SQL查询)
Hibernate reactive No Vert.x context active in aws rds(AWS RDS中的休眠反应性非Vert.x上下文处于活动状态)
Bulk insert with mysql2 and NodeJs throws 500(使用mysql2和NodeJS的大容量插入抛出500)
Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
auto_increment column for a group of rows?(一组行的AUTO_INCREMENT列?)
Sort by ID DESC(按ID代码排序)