Sqlserver MERGE 的基础用法
版权声明:本文为CSDN博主「暮雪寒寒」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_27628011/article/details/89319710
MERGE tABatch AS t -- 需要操作的主体表
USING(
SELECT batchNo,COUNT(0) AS waitTotal
FROM (
SELECT batchNo FROM OPENJSON(@checkJson)
WITH(batchNo VARCHAR(50) '$.batchNo')
) t GROUP BY t.batchNo
) AS s (batchNo,waitTotal) -- USING里面是数据源,as以后,必须按照顺序指定字段名
ON t.batchNo = s.batchNo -- 这里是对比的条件
WHEN MATCHED THEN
-- 如果有匹配就更新,只用写要更新的内容即可
UPDATE SET t.waitTotal = t.waitTotal+s.waitTotal
WHEN NOT MATCHED THEN
-- 没有匹配就新增,注意这里的INSERT不能再跟表名了
INSERT
(
batchNo,
waitTotal,
createTime
)VALUES(
s.batchNo,
s.waitTotal,
getdate()
); --这里可以带Output 输出需要的信息 包括 deleted inserted ,Action 详细可以看一下官方文档
-- merge必须分号结尾,不然报错
Sqlserver MERGE 的基础用法的更多相关文章
- oracle入坑日记<六>自增列创建和清除(含序列和触发器的基础用法)
0 前言 用过 SQLserver 和 MySQL 的自增列(auto_increment),然而 Oracle 在建表设置列时却没有自增列. 查阅资料后发现 Oracle 的自增列需要手动编写. ...
- PropertyGrid控件由浅入深(二):基础用法
目录 PropertyGrid控件由浅入深(一):文章大纲 PropertyGrid控件由浅入深(二):基础用法 控件的外观构成 控件的外观构成如下图所示: PropertyGrid控件包含以下几个要 ...
- logstash安装与基础用法
若是搭建elk,建议先安装好elasticsearch 来自官网,版本为2.3 wget -c https://download.elastic.co/logstash/logstash/packag ...
- elasticsearch安装与基础用法
来自官网,版本为2.3 注意elasticsearch依赖jdk,2.3依赖jdk7 下载rpm包并安装 wget -c https://download.elastic.co/elasticsear ...
- BigDecimal最基础用法
BigDecimal最基础用法 用字符串生成的BigDecimal是不会丢精度的. 简单除法. public class DemoBigDecimal { public static void mai ...
- MySql与SqlServer的一些常用用法的差别
MySql与SqlServer的一些常用用法的差别 本文为转载 本文将主要列出MySql与SqlServer不同的地方,且以常用的存储过程的相关内容为主. 1. 标识符限定符 SqlServer [] ...
- Merge INTO的用法参考
Merge是一个非常有用的功能,类似于MySQL里的insert into on duplicate key. Oracle在9i引入了merge命令, 通过这个merge你能够在一个SQL语句中对一 ...
- Vue组件基础用法
前面的话 组件(Component)是Vue.js最强大的功能之一.组件可以扩展HTML元素,封装可重用的代码.根据项目需求,抽象出一些组件,每个组件里包含了展现.功能和样式.每个页面,根据自己所需, ...
- Smarty基础用法
一.Smarty基础用法: 1.基础用法如下 include './smarty/Smarty.class.php';//引入smarty类 $smarty = new Smarty();//实例化s ...
随机推荐
- CentOS用yum安装MySQL 8.0 .
先说一句,fuck,搞了一下午. 步骤:一:安装yum源: 1.wget https://dev.mysql.com/get/mysql80-community-release-el6-3.noarc ...
- Codeforces Round #304 (Div. 2)(CF546E) Soldier and Traveling(最大流)
题意 给定 n 个城市,m 条边.人只能从走相邻边相连(只能走一次)的城市. 现在给你初始城市的每一个人数,再给一组每个城市人数.询问是否可以从当前人数变换到给定人数.如果能,输入"YES& ...
- java 获取安全随机字符
private static final char[] CHAR_32 = new char[] {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'J', 'K', ...
- 用eclipse开发Android,用Genymotion测试时报错adb发生错误
每当我要运行安卓程序时,控制台就会报出 The connection to adb is down, and a severe error has occured. You must restart ...
- 在 Oracle 中使用正则表达式
Oracle使用正则表达式离不开这4个函数: 1.regexp_like 2.regexp_substr 3.regexp_instr 4.regexp_replace 看函数名称大概就能猜到有什么用 ...
- linux下安装编译为安装的php扩展
1.进入php源码包中,找到需要安装的扩展模块目录.cd /root/php-5.6.26/ext/mbstring 2.在扩展模块目录,运行phpize程序,(作用是检测 php 的内核版本,并为扩 ...
- BOI 2003 团伙
洛谷 P1892 [BOI2003]团伙 洛谷传送门 题目描述 1920年的芝加哥,出现了一群强盗.如果两个强盗遇上了,那么他们要么是朋友,要么是敌人.而且有一点是肯定的,就是: 我朋友的朋友是我的朋 ...
- 论文阅读笔记六十一:Selective Kernel Networks(SKNet CVPR2019)
论文原址:https://arxiv.org/pdf/1903.06586.pdf github: https://github.com/implus/SKNet 摘要 在标准的卷积网络中,每层网络中 ...
- 关于matlab tfdata的用法
加上'v',可以让输出的值由元胞数组改为数组直接输出:举个例子:h = tf([1 1],[1 2 5]);[num,den] = tfdata(h)可以看出输出的num和den为元胞数组的形式无 ...
- 【oracle】ORA-12638 : 身份证明检索失败
sqlnet.ora 1.删了 2.#注释了 背后缘由:待写