我有一个名为 t1
的表,其中有一个 PRIMARY KEY
,我将其称为 ITEM_ID
。
表格如下:
ITEM_ID VALUE1
2 2500
3 3500
5 5500
我还有几个表t2
和t3
是这样的:
ITEM_ID VALUE2
2 250
3 350
4 450
5 550
和
ITEM_ID VALUE3
2 25
3 35
4 45
5 55
6 65
我想获得这个(我加入只保留在 t1
中找到的行)
ITEM_ID VALUE1 VALUE2 VALUE3
2 2500 250 25
3 3500 350 35
5 5500 550 55
我知道如何使用 JOIN
和 CREATE
一个新表来做到这一点。
但是是否可以仅通过 ALTER
、ADD
和 UPDATE
列来实现?
最佳答案
ALTER TABLE t1 ADD VALUE2 INT, ADD VALUE3 INT;
UPDATE t1 a
JOIN t2 b ON a.ITEM_ID = b.ITEM_ID
JOIN t3 c ON a.ITEM_ID = c.ITEM_ID
SET a.VALUE2 = b.VALUE2,
a.VALUE3 = c.VALUE3;
关于mysql - 从 JOIN 更新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11620872/