我有2代表具有相同结构:使用连接在UPDATE查询
| term (varchar(50) utf8_bin) | count (bigint(11)) |
一个表被称为“BIG_TABLE”,而另一个“small_table”。大桌子有〜10M行,small_table有75K。
我想更新small_table,所以count列将从big_table中填充。 我尝试这样做:
UPDATE small_table b SET counter = (SELECT c.counter
FROM big_table c
WHERE c.term = b.term)
WHERE term = (SELECT c.term
FROM big_table c
WHERE c.term = b.term);
但它只是更新一行...
这是有道理的。但是我得到这个错误:“错误1048(23000):列'计数器'不能为空' – Cornwell
这是因为'big_table'中没有相应的记录。更新了我的答案。 –