2

私は2つのテーブルを同期する任務を負っています(両方とも同一です)。それぞれ 60 列あります。テーブル A は、最初に入力されるプライマリ テーブルです。これら2つのテーブルをマージし、呼び出されたときに同じ正確なデータ(更新、挿入、削除)を両方に入力するストアドプロシージャ(完了)を作成する必要があります。これを実現するには、SQL で MERGE 関数をどのように使用しますか? MSDN のドキュメントと、technet にある同様のドキュメントの両方を見てきましたが、使い始めるのにかなり混乱しています。マージする必要がある各フィールドを指定する必要がありますか? それとも、このアクションを実行するのは私が見逃している単純な呼び出しですか?

4

2 に答える 2

6

以下は、MERGE ステートメントの簡単な例へのリンクです。

http://www.simple-talk.com/sql/learn-sql-server/the-merge-statement-in-sql-server-2008/

基本的な構文は次のとおりです。

MERGE table1
USING table2
ON table1.id = table2.id
WHEN MATCHED THEN
--Do an update here
WHEN NOT MATCHED BY TARGET THEN
--Do an insert here (or a delete)
;

使用することもできますWHEN NOT MATCHED BY SOURCE

于 2013-02-13T17:57:37.993 に答える