我正在尝试将新行加载到表中,然后使用上载的ID更新表中的其他列。我只上传ID,然后加入其他表以将其他数据提取到表中。我尝试过的查询:
START TRANSACTION
LOAD DATA LOW_PRIORITY LOCAL INFILE 'file path' REPLACE INTO
TABLE
tablex CHARACTER SET
latin1 FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (`date_orderable`,
`id1`,
`id2,
`id3,
`d1`,
`d2,
`d3,
);
update tablex a left join uber_data b on a.id1 = b.id1
set a.d1 =b.d1;
update tablex a left join uber_data b on a.id2 = b.id2
set a.d2 =b.d2;
update tablex a left join uber_data b on a.id2 = b.id1
set a.d3 =b.d3;
COMMIT
它表示运行时第2行存在错误。有人知道如何将数据加载到表中,然后更新新行吗?谢谢!
答案 0 :(得分:0)
查询中存在几种语法错误:
列表中的某些字段(例如d2,</code> should be <code>
d2`,
在d2,</code> should be <code>
语句的末尾和START TRANSACTION;
语句的末尾也缺少分号。如果没有分号,MySQL会尝试一次解析两个语句,这会产生语法错误