将两个(或更多)文件中的数据加载到一个表中

时间:2010-12-01 22:01:16

标签: sql mysql

我有一张桌子:

CREATE TABLE t (
  id INT NOT NULL PRIMARY KEY,
  x INT NOT NULL,
  y INT NOT NULL );

数据分为两个文件:一个文件具有(id, x)个值对,另一个文件具有(id, y)个值对。每个行大约有2000万行。 id文件中显示的大多数x值也会显示在y文件中,反之亦然。

您能否建议如何将这两个文件中的idxy值加载到t

2 个答案:

答案 0 :(得分:1)

如果您使用的是unix机器,则可以访问“join”,它可以将您的2个文件连接在一起并在stdout上生成它们。批量加载标准直接进入mysql。这将减少写入磁盘的次数。

答案 1 :(得分:0)

使用LOAD DATA INFILE将每个文件加载到两个单独的表中。然后使用INSERT INTO ... SELECT将数据插入表t。