如何用一张表中的数据Update另外一张表的数据。
UPDATE T1 SET (C1, C2, C3) = (SELECT C1, C2, C3 FROM T2 WHERE T2.USER_ID = T1.USER_ID) WHERE EXISTS (SELECT * FROM T2 WHERE T2.USER_ID = T1.USER_ID);
如果没有"Where Exists"部分,则可能会出现的问题:在表T1中有的行,但如果在表T2中没有对应的行,那么值会被更新为NULL。加上"Where Exists"部分,确保只更新两表相匹配部分的数据,不匹配部分,保持原值。
时间: 2024-10-13 12:41:39