SqlServer中Merge的使用

来源:http://www.cnblogs.com/HorseWu/archive/2016/07/27/5710705.html
-Advertisement-
Play Games

引用自:http://www.cnblogs.com/CareySon/archive/2012/03/07/2383690.html 感謝CareySon的分享,我把使用到的SQL腳本貼上來。 --創建源表 CREATE TABLE SourceTable(ID INT,[DESC] VARCHA ...


引用自:http://www.cnblogs.com/CareySon/archive/2012/03/07/2383690.html

感謝CareySon的分享,我把使用到的SQL腳本貼上來。

--創建源表 CREATE TABLE SourceTable(ID INT,[DESC] VARCHAR(50));

--創建目標表 CREATE TABLE TargetTable(ID INT,[DESC] VARCHAR(50));

--為源表插入數據

INSERT INTO SourceTable VALUES(1,'描述1');

INSERT INTO SourceTable VALUES(2,'描述2');

INSERT INTO SourceTable VALUES(3,'描述3');

INSERT INTO SourceTable VALUES(4,'描述4');

INSERT INTO TargetTable VALUES(1,'在源表中存在,將會被更新');

INSERT INTO TargetTable VALUES(2,'在源表中存在,將會被更新');

INSERT INTO TargetTable VALUES(5,'在源表中不存在,將會被刪除');

INSERT INTO TargetTable VALUES(6,'在源表中不存在,將會被刪除');

MERGE INTO TargetTable AS T

USING SourceTable AS S ON T.ID=S.ID

WHEN MATCHED THEN UPDATE SET T.[DESC]=S.[DESC]

WHEN NOT MATCHED THEN INSERT VALUES(S.ID,S.[DESC])

WHEN NOT MATCHED BY SOURCE THEN DELETE

OUTPUT  

  $ACTION AS [ACTION],INSERTED.ID AS 插入的id,Inserted.[DESC] AS 插入的DESC,  

  DELETED.ID AS 刪除的id,DELETED.[DESC] AS 刪除的DESC;


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在JS中設置節點的屬性與屬性值用到setAttribute(),獲得節點的屬性與屬性值用到getAttribute(),而在jquery中,用一個attr()就可以全部搞定了,贊一個先 ^^ jquery中用attr()方法來獲取和設置元素屬性,attr是attribute(屬性)的縮寫,在jQue ...
  • 創建臨時表,往臨時表插入數據的時候報的錯誤。 一開始提示沒有打開主鍵,後來打開主鍵就提示上述錯誤異常。 從網上查找資料沒有找到,然後又到群里問各位大牛,一位大牛告訴我是沒有設置主鍵。 我又仔細看看提示,恍然大悟,我就給臨時設置了主鍵。 沒有主鍵之前的代碼: 執行的話就會報“表 '#TT' 沒有標識屬 ...
  • 我怎麼一步一步追到ODBO了? mondrian核心api—>olap4j—>jedox也在用olap4j—>ODBO? ODBO是什麼呢? OLE DB for OLAP (Object Linking and Embedding Database for Online Analytical Pr... ...
  • Laxcus是Laxcus大數據實驗室歷時五年,全體系自主設計研發的國內首套大數據管理系統。能夠支撐百萬台級電腦節點,提供EB量級存儲和計算能力,相容SQL和關係資料庫。最新的2.x版本已經完整覆蓋和集成大數據主流技術和功能,並投入到國內多個超算項目中使用。部署laxcus集群很簡單,一個普通用戶... ...
  • 今天,我和大家分享下redis在運維數據分析中的去重統計方式。 為了避免混淆,本文中對於redis的數據結構做如下約定: SET:saddkey member ZSET:zaddkeyscoremember HYPERLOGLOG:pfaddkeyelement STRING:setbitkeyof ...
  • 一. 什麼是跟蹤標記 SQL Server 跟蹤標記(Trace Flag),像是一個開關,可用來自定義SQL Server的某種行為或特性,在性能診斷,系統調試等方面較為常用。比如:開啟1204或1222跟蹤標記,可在errorlog里記錄死鎖信息的明細。 跟蹤標記有會話級和實例級兩種。 二. 如 ...
  • 版權聲明:筆記整理者亡命小卒熱愛自由,崇尚分享。但是本筆記源自www.jtthink.com(程式員在囧途)沈逸老師的《web級mysql顛覆實戰課程 》。如需轉載請尊重老師勞動,保留沈逸老師署名以及課程來源地址。 一、MYSQL安裝設置簡述。 1、本課程基於MYSQL 5.7.9教學。 2、課程使 ...
  • ORACLE 11g 導出 表的時候 不會導出空表 導出空表操作步驟 :(使用PLSQL) 1、打開SQL window 執行下麵的 SQL Select 'alter table '||table_name||' allocate extent;' from user_tables where s ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...