我有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'中沒有相應的記錄。更新了我的答案。 –