我有一个非常大的制表符分隔文件。它大约有 500 列宽,可能有 100 万条记录长。它是文本、日期和数字的混合体。实际上,我只对其中的几列感兴趣 - 其余的将被删除。
我想将它导入 MySQL,但这是一次性(可能是 2 次或 3 次)任务,我真的懒得为 LOAD DATA INFILE
创建一个空表。命令。
实现此目标的最省力方法是什么?可以LOAD DATA INFILE
可以使用 VARCHAR
即时创建表/TEXT
列或类似列?
最佳答案
您必须创建一个表。但如果您只需要某些列,则可以选择它们。
创建一个包含所需列的表。
您可以像这样运行LOAD DATA
。
LOAD DATA LOCAL INFILE 'import.csv' INTO TABLE yournewtable
FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n'
(@col1,@col2) set Colum1=@col1,Column2=@col2;
@col1,@col2 是来自 CSV 的变量。 Colum1,Column2 代表您创建的表中的列。
关于mysql - 在不首先创建表的情况下将一个非常大的制表符分隔文件导入 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29028972/