All*_*n S 8 mysql sql database
我有以下两个表:
Table A
+-------------------+
|___User___|__Value_|
| 3 | a |
| 4 | b |
| 5 | c |
|____6_____|__d_____|
Table B
+-------------------+
|___User___|__Value_|
| 1 | |
| 4 | |
| 5 | |
|____9_____|________|
Run Code Online (Sandbox Code Playgroud)
我的工作是user从表A(及其对应的value)中获取,然后将其映射到表B并在那里插入这些值.因此,从上面的示例中,在运行脚本后,表B应如下所示:
Table B
+-------------------+
|___User___|__Value_|
| 1 | |
| 4 | b |
| 5 | c |
|____9_____|________|
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果表A包含300,000个条目而表B包含70,000个条目,我如何构建一个能够以有效的方式为我执行此操作的SQL查询?
注意:在表A中,User字段不是唯一的,Value字段也不是唯一的.但是在表B中,User和Value字段都是唯一的,不应出现多次.两个表的主键都不是.
可能是这个
update table_b as b
inner join table_a as a on a.User = b.User
set b.value = a.value
Run Code Online (Sandbox Code Playgroud)