如何以最快的方式更新表 B 中的所有记录 table_id 取决于使用 old_id 的两个表的链接。我在两个表上都有多条记录,每次更新表 2 时,都需要时间来更新表 B 中的所有 table_id。关于如何加快记录更新的任何建议。
这是我的更新需要时间的查询:我已经测试过的所有 3 个查询,但更新速度很慢。任何建议请:
Query 1:
UPDATE Table_B dest
SET table_id = (SELECT id FROM Table_A WHERE old_id = dest.old_id )
WHERE table_id = 0;
Query 2:
UPDATE Table_B dest
INNER JOIN Table_A src ON dest.old_id = src .old_id
SET dest.table_id = src .id
WHERE dest.table_id = 0;
Query 3:
UPDATE Table_B dest, Table_A src
SET dest.table_id = src.id
WHERE dest.old_id = src.old_id AND dest.table_id = 0;
Table_A
id | old_id | fullname
1 2131 Name 1
2 2132 Name 2
3 2133 Name 3
4 2134 Name 4
..................... and so on (8000 records)
Table_B
id | table_id | old_id | work
1 0 2131 Work 1
2 0 2131 Work 2
3 0 2131 Work 3
4 0 2132 Work 1
5 0 2132 Work 2
6 0 2132 Work 3
7 0 2133 Work 1
8 0 2134 Work 1
..................... and so on (55000 records)