mysql—将新列追加到表中,并用csv文件中的数据填充它

rdrgkggo  于 2021-06-19  发布在  Mysql
关注(0)|答案(0)|浏览(189)

我的问题不是如何将.csv文件数据导出到mysql中。我的问题是如何首先向现有表中添加一列,然后用.csv文件中的数据填充新创建的列。例如,假设我现在有一个表,有2列和400行:

+----------------+------------+
| username       | first_name |
+----------------+------------+
| abc            | Hun        |
+----------------+------------+
...

我有这个.csv文件(还有400行):


## column1 ##

ID,75u
PID,2_3_b
LID,3_b
...

这就是我所尝试的:

LOAD DATA INFILE '/path/to/file/example.csv'
INTO TABLE my_table
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(@col1, @col2) SET new_column = @col2;

我后来收到这个错误:
错误1054(42s22):“字段列表”中的未知列“new\u column”
所以我不得不用这个名字创建一个新的列:

ALTER TABLE my_table ADD new_column VARCHAR(400) AFTER first_name;

在这之后,我可以从.csv文件中插入数据,但它所做的是:
数据是垂直附加的(而不是水平附加的)。i、 例如,我的表现在有800行,因为它在给出 null 值(对于401-800行)到2个预先存在的列。
如何将新列追加到表中,然后水平地将.csv数据追加到新列中(最好是一步)?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题