我有两个表 tableA 和 tableB。tableA 有 200 万条记录,tableB 有超过 1000 万条记录。tableA 有三十多列,而 tableB 只有两列。我需要通过连接两个表来从 tableB 更新 tableA 中的列。
UPDATE tableA a
INNER JOIN tableB b ON a.colA=b.colA
SET a.colB= b.colB
两个表中的 colA 都已编入索引。
现在,当我执行查询需要几个小时。老实说,我从未见过它完成,我等了最多 5 个小时。他们有什么方法可以在 20-30 分钟内完成此查询。我应该采取什么方法。
解释 SQL 查询
"id" "_type" "table" "type" "possible_" "key" "key_len" "ref" "rows" "Extra"
"1" "SIMPLE" "a" "ALL" "INDX_DESC" \N \N \N "2392270" "Using where"
"1" "SIMPLE" "b" "ref" "indx_desc" "indx_desc" "133" "cis.a.desc" "1" "Using where"