UPDATE TABLE1 T1
SET T1.USERTIME =
(SELECT T2.USERTIME FROM TABLE2 T2 WHERE T2.MSGID_DB = T1.MSGID)
WHERE EXISTS (SELECT 1 FROM TABLE2 T2 WHERE T2.MSGID_DB = T1.MSGID);
--更新多个字段:
UPDATE TABLE1 T1
SET A.USERTIME =
(SELECT T2.USERTIME FROM TABLE2 T2 WHERE T2.MSGID_DB = T1.MSGID),
T1.PROCESSFLAG =
(SELECT T2.PROCESSFLAG FROM TABLE2 T2 WHERE T2.MSGID_DB = T1.MSGID)
WHERE EXISTS (SELECT 1 FROM TABLE2 T2 WHERE T2.MSGID_DB = T1.MSGID);
--多表关系更新:
UPDATE TABLE1 T1
SET T1.USERTIME =
(SELECT T2.USERTIME FROM TABLE2 T2 WHERE T2.MSGID_DB = T1.MSGID),
T1.PROCESSFLAG =
(SELECT T3.PROCESSFLAG FROM TABLE3 T3 WHERE T3.MSGID = T1.MSGID)
WHERE EXISTS (SELECT 1 FROM TABLE2 T2 WHERE T2.MSGID_DB = T1.MSGID)
AND EXISTS (SELECT 1 FROM TABLE3 T3 WHERE T3.MSGID = T1.MSGID);