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" = '李四';

相关推荐
麦聪聊数据14 小时前
数据服务化时代:企业数据能力输出的核心路径
数据库
shushangyun_14 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
DARLING Zero two♡14 小时前
【MySQL数据库】数据类型与表约束
数据库·mysql
曹牧15 小时前
Oracle EXPLAIN PLAN
数据库·oracle
BD_Marathon15 小时前
SQL学习指南——视图
数据库·sql
活宝小娜15 小时前
mysql详细安装教程
数据库·mysql·adb
贤时间15 小时前
codex 助力oracle ebs 开发
数据库·oracle
秉承初心15 小时前
PostgreSQL 数据性能瓶颈突破实战
数据库·postgresql·oracle
Database_Cool_16 小时前
即席查询(Ad-Hoc)数据库选型:AnalyticDB MySQL 秒级 Ad-Hoc 分析方案
数据库·mysql