C/C++教程

PgSQL upsert批量查询插入或更新(insert select/on conflict do update踩坑记录)

本文主要是介绍PgSQL upsert批量查询插入或更新(insert select/on conflict do update踩坑记录),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
insert into t --进行插入
values(1,'name') 
ON CONFLICT(id) --如果id这个键存在
do update set --更新以下字段
name=EXCLUDED.name ;
 
 
insert into t (a1,b1,c1)
select a2,b2,c2
from t2 
on conflict(a1) 
do update set 
(b1,c1) = (1,2)

conflict里的字段必须为主键或者唯一索引,可以多个字段作为唯一索引,在数据库设置唯一,不然会报

这篇关于PgSQL upsert批量查询插入或更新(insert select/on conflict do update踩坑记录)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!