【发布时间】:2011-03-15 04:27:09
【问题描述】:
我有几个 CSV 文件要加载到我的数据库中,但 CSV 文件包含的列比我的数据库中的多得多。如何仅将 CSV 文件中的选定列导入我的数据库?
为了论证,假设 CSV 包含一个标题行,列标题为 A 到 Z,然后有两百万行包含列 A 到 Z 的值。假设我的表 myTest 包含 B、N 和 S,所以我只想将 CSV 文件中的 B、N 和 S 列导入 myTest。
我打算这样做:
mysqlimport --local --columns=B,N,S --ignore-lines=1 --delete --default-character-set=latin1 --fields-optionally-enclosed-by=\" --fields-terminated-by=\, --lines-terminated-by=\r\n myDb myTest.csv
但这会用 A、B 和 C 列的值填充 B、N 和 S 行,而不是像我想要的那样用 B、N 和 S 列的值填充。
有什么建议可以让它只导入 B、N 和 S 吗?
【问题讨论】: