我必须执行以下查询的负载
UPDATE translations SET translation = (SELECT description FROM content WHERE id = 10) WHERE id = 1;
现在,我使用加载数据 infile 进行插入和替换,但我想要的本质是只更新该表中每一行的 1 个字段,而不会弄乱键。这可能是什么语法,请注意查询仅影响现有行。
谢谢
最佳答案
CREATE TEMPORARY TABLE
创建临时表。 LOAD DATA INFILE
填充临时表。 UPDATE translations SET translation = ...
以从临时表的 SELECT 中设置 1 字段,并与真实表连接。示例语法如下:UPDATE realTable, tmpTable
SET realTable.price = tmpTable.price
WHERE realTable.key = tmpTable.key
关于mysql 加载数据 infile,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4400420/