mariadb:基于另一个表的数据插入和更新表

zy1mlcev  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(428)

/下面是我用来合并的代码,但是我得到了一个错误并且无法更新错误:sql错误[1064][42000]您的sql语法有一个错误;查看与您的mariadb服务器版本相对应的手册,了解在第1行/

BEGIN
MERGE temp2 as t
using temp1 as s ON (t.slno = s.slno)
-- Insert values when data no present
WHEN NOT MATCHED THEN INSERT VALUES
(s.slno,s.name,s.address);
-- Update when values present
WHEN MATCHED then UPDATE SET
t.slno = s.slno,
t.name = s.name,
t.address = s.address;
END
wgmfuz8q

wgmfuz8q1#

你可以用这个:

INSERT INTO temp2 (slno, name, address) SELECT slno, name, address FROM temp1 
ON DUPLICATE KEY UPDATE 
slno = VALUES(slno), name = VALUES(name), address = VALUES(address)

相关问题