博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于Sql Server 中 Merge需要注意地方
阅读量:5294 次
发布时间:2019-06-14

本文共 483 字,大约阅读时间需要 1 分钟。

  我们经常使用Merge处理保存一个集合的情况,在更新一些关系表时非常常见:

    1.集合中有并且数据库中也有,更新状态

              2.集合中有,数据库中没有,插入

              3.集合中没有,数据库中有的,删除

        具体语法如下:        

MERGE INTO [dbo].[Relation] AS RUSING @Table AS T ON R.[GroupId] = @groupId AND R.Id = T.[Id]WHEN MATCHED THEN        UPDATE SET R.[IsDel] = 0    WHEN NOT MATCHED THEN        INSERT ..... VALUES.....WHEN NOT MATCHED BY SOURCE AND R.[GroupId] = @groupId THEN       UPDATE SET R.[IsDel] = 1;

        特别需要注意的是第3种,一定要控制好范围,否则会造成全表更新的情况!!!

转载于:https://www.cnblogs.com/qiailu/p/7904247.html

你可能感兴趣的文章
接口Comparator和Comparable的区别和联系
查看>>
Java中的阻塞和非阻塞IO包各自的优劣思考(经典)
查看>>
JVM常见的七种垃圾收集器的简单比较
查看>>
jQuery(没东西,看源码,课件11-30,12-03)
查看>>
使用selenium抓取淘宝信息并存储mongodb
查看>>
思维在别处
查看>>
C#中文件操作【File】和【Directory】
查看>>
Google Maps API 调用实例
查看>>
SSH框架下ajax调用action并生成JSON再传递到客户端【以get和post方式提交】
查看>>
智能助理(基于XE7+paxCompiler的助理软件,支持自然语言输入及语音识别)
查看>>
android用户界面之Gallery3D学习资料汇总
查看>>
Spring MVC之@RequestBody, @ResponseBody 详解
查看>>
如何点击添加按钮时添加按钮
查看>>
测试2
查看>>
HackerRank "Sherlock and Cost"
查看>>
Combination Sum II Leetcode
查看>>
TCP/IP协议
查看>>
css3的box-shadow属性
查看>>
get****Context各个方法分析
查看>>
Java Web项目--显示一个静态页面
查看>>