难以将这些SQL查询组合到phpMyAdmin中的1个查询中

poi*_*cho 0 mysql sql database

我希望能够一起运行以下查询,但我不知道怎么做而不会出错.

我想结合这个......

UPDATE table1
   SET facebookurl = ( SELECT facebookurl
                   FROM socialmedia
                  WHERE socialmedia.fullname = table1.fullname )
WHERE EXISTS ( SELECT 1 FROM socialmedia
                  WHERE socialmedia.fullname = table1.fullname )
Run Code Online (Sandbox Code Playgroud)

...有了这个...

UPDATE table1
   SET email = ( SELECT email 
                   FROM socialmedia
                  WHERE socialmedia.fullname = table1.fullname )
WHERE EXISTS ( SELECT 1 FROM socialmedia
                  WHERE socialmedia.fullname = table1.fullname )
Run Code Online (Sandbox Code Playgroud)

...最终还有3或4个具有完全相同的结构(仅更改源列和目标列).

有没有一种简单的方法来组合这些,同时避免错误?

Mul*_*ync 7

MySQL的

UPDATE table1 a INNER JOIN socialmedia s
       ON  s.fullname = a.fullname
   SET a.email = s.email, a.facebookurl  = s.facebookurl;
Run Code Online (Sandbox Code Playgroud)

神谕

UPDATE table1
   SET (email, facebookurl) = 
                  (SELECT email, facebookurl
                   FROM socialmedia
                  WHERE socialmedia.fullname = table1.fullname)
WHERE EXISTS (SELECT 1 FROM socialmedia
              WHERE socialmedia.fullname = table1.fullname);
Run Code Online (Sandbox Code Playgroud)