私は3つのテーブルを持っています:
- ステージング: 毎月挿入される従業員レコードを取得します。
- マスター: テーブルには、ステージングの一意のレコードから以前に入力されたすべてのレコードが含まれています。
- 変更: すべての変更を追跡します - 主キーはありません。
テーブルには 10 列あります。ステージング テーブルには、毎月約 2,500,000 のレコードがあります。カーソルを使用して、ステージングからマスター テーブルに新しいレコードを挿入できます。
更新に関しては、内部結合を使用して、マスター テーブルに既に存在するステージングからレコードを取得しています。
従業員情報が変更されたかどうかを確認するには、次の行にクエリを実行する必要がありますか?
WHERE Staging.FirstName <> Master.FirstName
OR Staging.LastName <> Master.LastName
OR ...
10列についても同様ですが、もっと簡単な方法はありますか?