要約:SQL - 使用してMERGE
構文は、ターゲットデータテーブルに挿入を実行、データソーステーブルの結合の結果に応じて、SQL Server 2008の新しい構文で更新、またはジョブを削除MERGE。次の例では...別の方法で実施されるようになってき
コード:
-ビッグデータウェアハウスと呼ばれる新しいテーブルを作成して
表に大きな倉庫を作成
(
名前のデータ型はnvarchar(50)、
在庫整数
)。
-ビッグデータシートデータウェアハウスを追加
、大きな倉庫の中に挿入し
た値(「中国の著書」、10)、(「英語の本」、5)、(法則楽器'、1);
-リターン・データウェアハウスに呼ばれる新しいテーブルを作成し
、リターン・ウェアハウスにテーブルを作成します
(
名前のデータ型はnvarchar(50)、
事前および出荷整数を後退
)。
-リターンを高めるための新しいデータテーブルのデータウェアハウス
のリターンに倉庫の中に挿入し
た値(「中国の著書」、5)、(「英語の本」、-5)、(「日間の楽器」、6);
- 2つのデータテーブルとクエリデータウェアハウス大倉庫の復帰への
DBO大型倉庫SELECT * FROM。
倉庫にDBOリターンSELECT * FROM。
- 2つのテーブルがMERGE
二つのデータMERGEのテーブル、及び在庫がある場合に加えてデータを削除し、その後、ゼロに等しい出荷を退避-
-データMERGEの二つの表、在庫がある場合にプラス出荷更新を退避しますインベントリに
-二つのテーブルデータなしMERGE、倉庫大に新しいデータ・ウェアハウスに戻ります
大規模な倉庫にマージ
リターンに倉庫を利用した
...リターン倉庫名に名前=大型倉庫ON
時にマッチして(大倉庫の在庫は+倉庫に戻す。出荷0 =後退)THEN
DELETE
MATCHED WHEN THEN
SET大きな倉庫を更新する。=大在庫倉庫の在庫+倉庫に戻す。出荷が進退
THEN一致しないWHEN
リターンに値を(INSERT倉庫名、リターンの出荷台数に倉庫後退);
-クエリMERGEの結果は
。DBO大型倉庫SELECT * FROM
リターン・ウェアハウスにDBO SELECT * FROM。
参考:
SQL Server 2008のT-SQLの戦闘学校(作成者:ヤン志強の先生)
MERGE(のTransact-SQL)
SQL 2008 T-SQLのMERGEオペレータ
SQLのMERGE文は、テーブルの組み合わせである
SQLのMERGE文を使用して、テーブルの組み合わせです
オリジナル:ビッグボックス SQL -使用してMERGE