首页 > 数据库 >pg数据库upsert使用

pg数据库upsert使用

时间:2023-06-08 21:04:27浏览次数:36  
标签:记录 数据库 VALUE id 麦当劳 pg ID upsert

upsert顾名思义是update和insert,即插入的记录存在重复则会更新这条记录,否则就插入;这个语法可以简化我们的操作;upsert是一个简称的术语,并不是标准的sql标志符,因此在不用的数据库体系中表现的语法不一样,在pg数据库中语法为

  1.将某个数据更新为输入的值 :Insert into ....on conflict (判断重复字段集合) do update(更新)set....

  INSERT INTO ACCOUNT(ID,NAME) (1,‘麦当劳') ON CONFLICT(ID) DO UPDATE SET NAME='麦当劳' //向数据库中插入id为1,那么为麦当劳的记录,如果id为1的记录存在,则将对应的记录的name修改为麦当劳

  2.将某个数据更新为原值的累加等

  INSERT INTO ACCOUNT AS QUERYDATA (ID,VALUE) (1,100) ON CONFLICT(ID) DO UPDATE SET VALUE=QUERYDATA .VALUE+100 //向数据库中插入id为1,那么为麦当劳的记录,如果id为1的记录存在,则将对应的记录的name修改为麦当劳

  3.存在重复记录不做处理

  INSERT INTO ACCOUNT AS QUERYDATA (ID,VALUE) (1,100) ON CONFLICT(ID) DO nothing

标签:记录,数据库,VALUE,id,麦当劳,pg,ID,upsert
From: https://www.cnblogs.com/cellphone/p/17467630.html

相关文章

  • JAVA的springboot+vue学习平台管理系统,校园在线学习管理系统,附源码+数据库+论文+PPT
    1、项目介绍在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括学习平台的网络应用,在外国学习平台已经是很普遍的方式,不过国内的管理平台可能还处于起步阶段。学习平台具有学习信息管理功能的选择。学习平台采用java技术,基于springboot框架,mysql数据库进行......
  • 关于jsp的MySQL数据库连接问题
    <%@pagelanguage="java"contentType="text/html;charset=utf-8"pageEncoding="utf-8"%><%@pageimport="java.sql.*"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""......
  • 墨天轮国产关系型分布式数据库榜单解读
    分布式关系型数据库概述作为数据库演进方向之一,分布式能力受到更多用户的关注。从技术架构演进来看,数据库正走过了从单机式、集中式到分布式的发展过程,目前是多种架构并存的阶段。分布式架构以其更好的存储与计算扩展能力,受到更多的关注。在墨天轮社区的中国数据库流行度排行榜上......
  • 面试之数据库SQL编写实战案例
    好多同学在面试的过程中会碰到关于SQL查询的相关案例,让手写SQL语句,直接蒙蔽的不少哦,下面以几个面试题为例,谈谈SQL的编写,有题有答案,大家可以看看参考一下:数据库的基本准备:/*NavicatMySQLDataTransferSourceServer:localhostSourceServerVersion:50168SourceH......
  • 2023春季招聘面试集锦:MYSQL数据库高频面试题
    mysql索引的数据结构,各自优劣索引的数据结构和具体存储引擎的实现有关,在MySQL中使用较多的索引有Hash索引,B+树索引等,InnoDB存储引擎的默认索引实现为:B+树索引。对于哈希索引来说,底层的数据结构就是哈希表,因此在绝大多数需求为单条记录查询的时候,可以选择哈希索引,查询性能最快;其余大......
  • Gauss (openGauss轻量版)数据库安装配置
    1、修改操作系统配置为了在防火墙开启的状态下,确保openGauss轻量版的正常使用。用户需要将轻量版相关的服务、协议、IP以及端口添加到主机的防火墙白名单中。目前仅支持在防火墙关闭的状态下进行安装。修改/etc/selinux/config文件中的“SELINUX“值为“disabled“。a.使用......
  • php 备份数据库 Backup Your MySQL Database Using PHP
    代码:<?phpbackup_tables('localhost','root','root','mysql');/*backupthedbORjustatable*/functionbackup_tables($host,$user,$pass,$name,$tables='*'){ $link=mysql_connect($host,$user,$pas......
  • Redhat8安装MySQL8操作方法(超简单Linux无依赖安装mysql数据库)
    一、安装说明1.1、相关说明:Redhat8在线安装Mysql8数据库,使操作系统找到并自动安装自适应的版本及相关依赖组件;1.2、系统版本 二、安装方法2.1、下载应用软件[root@GuoDC~]#wgethttps://dev.mysql.com/get/mysql80-community-release-el8-4.noarch.rpm 2.2、安装应用......
  • 【C#】JSON转DataTable存入数据库
    由于JSON直接转DataTable可能会存在类型丢失如下:采用读取数据库表字段类型构建DataTable///<summary>///JSON转DataTale存入数据库///</summary>///<paramname="json"></param>publicstaticvoidJsonDataTableTest(stringjson){stringsql=strin......
  • 2022 中国开源创新大赛,时序数据库 TDengine 榜上有名
    近日,2022中国互联网发展创新与投资大赛暨2022年中国开源创新大赛在北京落下帷幕,本次大赛由中央网信办信息化发展局指导,中国互联网发展基金会、中国网络空间研究院、中国互联网投资基金联合主办。非常荣幸的是,凭借着强大的开源创新能力和产品竞争力,时序数据库(TimeSeriesDatab......