postgresql insert on conflict 不存在则插入,存在则更新

向一张表执行插入动作,如果插入的字段数据已存在,则执行更新操作,不存在则进行插入操作。

1、创建一张表

CREATE TABLE "user_info" (

"id" int2 NOT NULL,

"name" varchar(20) COLLATE "pg_catalog"."default",

CONSTRAINT "user_info_pkey" PRIMARY KEY ("id")

);

2、执行编辑语句

INSERT INTO "user_info" ("id","name") VALUES (1,'张三') ON CONFLICT ("id") DO UPDATE SET "name" = '张三';

3、执行编辑语句("id"值相同

INSERT INTO "user_info" ("id","name") VALUES (1,'李四') ON CONFLICT ("id") DO UPDATE SET "name" = '李四';

相关推荐
high20116 分钟前
【架构】-- Mysql delete vs truncate 深度解析
数据库·mysql·架构
l1t25 分钟前
DeepSeek总结的DuckDB CLAUDE.md
数据库·人工智能
蜜獾云26 分钟前
Redis常用集群以及性能压测实战
数据库·redis·缓存
fengxin_rou27 分钟前
【Redis 位图分片计数详解】:原理、实战架构与避坑最佳实践
数据库·redis·架构·bitmap
ZC跨境爬虫28 分钟前
跟着 MDN 学 HTML day_63:(Web 中矢量图形的完整指南)
前端·javascript·数据库·ui·html
历程里程碑37 分钟前
53 多路转接select
linux·开发语言·数据结构·数据库·c++·sql·排序算法
闪电悠米38 分钟前
黑马点评短信登录02_redis_token_login
数据库·redis·firefox
j7~40 分钟前
【MYSQL】 mysql库和表的操作--详解
数据库·c++·mysql·数据库表的操作·数据库库的操作
ECT-OS-JiuHuaShan42 分钟前
什么是认知,认知的本质是什么?
数据库·人工智能·算法·机器学习·数学建模
2301_781571429 小时前
Golang格式化输出占位符都有什么_Golang fmt占位符教程【通俗】
jvm·数据库·python