我尝试使用merge语句在Informix v10.0中插入/更新但它抛出语法错误:
create table source(id int, account int, age int);
create table target (id int, account int, age int);
insert into source values(1, 1200, 25);
insert into source values(2, 1300, 28);
insert into source values(3, 1400, 45);
merge into target t
using source s on t.id = s.id
when matched then
update
set t.id = s.id, t.account = s.account, t.age = s.age
when not matched then
insert (t.id, t.account, t.age)
values (s.id, s.account, s.age);
select * from target;
你能帮忙吗?
Informix 10.00中没有MERGE语句。它是在11.50中添加的——请参阅SQL语法手册中的MERGE语句。新功能页面表明它是在11.50.xC6中添加的,这是维护发布周期的一部分。
请注意,10.00版本和所有11.x版本(11.10、11.50、11.70(都不受支持。11.70版本于2020-10-01停止支持。