【发布时间】:2018-09-08 10:12:23
【问题描述】:
我在 MySQL 中有以下查询按预期工作:
SELECT *
FROM wa_tmp_listed A
INNER JOIN wa_list B
ON A.symbol = B.symbol
这会带回大约 3500 条记录。我要做的是将所有这些记录更新为wa_list。
所以我相信这个查询应该能让我到达那里,但我一直遇到错误,所以想问一下是否有人对语法有建议,或者我在概念上是否有错误:
UPDATE `wa_list`
(SELECT * FROM `wa_tmp_listed` A INNER JOIN `wa_list` B ON A.symbol = B.symbol)
SET field1 = A.field1,
field2 = A.field2,
field3 = A.field3,
field4 = A.field4,
field5 = A.field5,
field6 = A.field6,
field7 = A.field7,
field8 = A.field8,
field9 = A.field9,
field10 = A.field10
WHERE A.field1 = B.field1
AND A.field2 = B.field2
AND A.field3 = B.field3;
注意事项:
-
第一个查询中的
A.symbol等于第二个查询中的A.field2。
2:为清楚起见,在wa_tmp_listed 表中查找并更新wa_list 中的所有A.symbol,然后将字段更新为wa_list。
【问题讨论】:
标签: mysql select sql-update inner-join