Postgresql 数据批量更新和插入判重

原创
2020/09/23 13:36
阅读数 184

下面是一个小小的例子: 

drop table if exists xh_yw.test;

create unlogged table xh_yw.test (
 userid int8,
 username varchar2(100),
 CONSTRAINT test_primary_key PRIMARY KEY (userid)
);

select * from xh_yw.test;


-- 不存在则新增,存在则更新(类似mysql:on duplicate update操作) -- https://blog.csdn.net/weixin_34307464/article/details/91936020
insert into  xh_yw.test(userid,username) values(1,'boonya') on conflict(userid) do update set username='boonya_update' ;

-- 批量修改数据语句
update xh_yw.test a set username= t.username from (select unnest(array[1]) as userid,unnest(array['boonya_batch']) as username) as t where t.userid = a.userid;

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部