从csv文件更新表选择第一个字段?

时间:2017-12-29 19:36:50

标签: mysql csv

我有一系列我想要导入MySQL的CSV文件。首先填充表格,我做了以下几点;

mysql -u root -p apn -e "LOAD DATA LOCAL INFILE '/opt/cell.csv' INTO TABLE data FIELDS TERMINATED BY ',';"

CSV内容为;

89xx,31xx,88xx,35xx,ACTIVATED,250.0MB,GPRS,96xx,0,0,2,false,DEFAULT

一个唯一字段是第一个以'89xx'开头的字段(进入名为'icci​​d'的列)。

现在我想做的是更新表,但是如何使用CSV中的第一个条目来更新行的其余部分一无所知?它将像我需要更新的第4个字段,因为这是将改变的值(特定蜂窝设备的数据使用)。在进行全新导入之前,我没有那么多问题清空表格,我想虽然更新是一种更好的做法,但最终我需要每天更新几次。

由于我没有任何语言或mysql的实用技能,是否最好只插入临时表并从中更新?

1 个答案:

答案 0 :(得分:0)

您可以使用

  

更换

之前

  

INTO

更新/替换您的行的关键字。

LOCAL INFILE '/opt/cell.csv' REPLACE INTO TABLE data FIELDS TERMINATED BY ',';"

要忽略您的重复索引,您可以使用

  

IGNORE

之前的

关键字

  

INTO

Load data manual