我有一系列我想要导入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'开头的字段(进入名为'iccid'的列)。
现在我想做的是更新表,但是如何使用CSV中的第一个条目来更新行的其余部分一无所知?它将像我需要更新的第4个字段,因为这是将改变的值(特定蜂窝设备的数据使用)。在进行全新导入之前,我没有那么多问题清空表格,我想虽然更新是一个更好的做法,但我最终需要每天更新几次。
既然我没有任何语言或mysql的实用技能,那么最好只是插入临时表并从中更新吗?
您可以使用
更换
之前
INTO
用于更新/替换行的关键字。
LOCAL INFILE '/opt/cell.csv' REPLACE INTO TABLE data FIELDS TERMINATED BY ',';"
要忽略您的重复索引,您可以使用
忽视
关键字之前
INTO