我必须根据其他表中的值更新表中的列值。这就是我所拥有的:
TABLE_A
| ---------------- |
| id | val ||
| ---------------- |
| 1 |一个|
| 2 | b ||
| 3 | c ||
| 4 |一个|
| 5 | b ||
| 6 || c ||
| ---------------- |
临时表_B
| ---------------- |
| id | val ||
| ---------------- |
| 4 |一个|
| 5 | b ||
| 6 || c ||
| ---------------- |
临时表_C
| ---------------------------- |
| id | val1 | val2。|
| ---------------------------- |
| h | 4 | b | |
| k | 4 | e ||
| n | 5 |一个|
| o | 6 || c ||
| p | 6 || d ||
| q | 5 | g ||
| ---------------------------- |
我想做的是:
对于table_a中的每一行,其中(table_a.id = table_b.id)然后
其中(table_a.val = table_c.val2)设置table_a.val = table_c.id
我似乎无法为此编写正确的UPDATE语句。
有人可以帮忙吗?
答案 0 :(得分:0)
我相信,遵循这些原则,某些方法将对您有用(使用INNER JOIN)
UPDATE table_a A
INNER JOIN table_b B ON A.id = B.id
INNER JOIN table_c C ON A.val = C.val2
SET A.val = C.id