バージョン1SQL SELECT ...
INSERT INTO table_a (col_1, col_2)
SELECT DISTINCT col_1, col_2
FROM table_b b
WHERE b.col_1 IS NOT NULL
AND b.col_2 IS NOT NULL
AND b.id NOT IN
(
SELECT b.id
FROM table_b b
JOIN table_a a WITH(NOLOCK)
ON b.col_1 = a.col_1
AND b.col_2 = a.col_2.
)
バージョン2
SELECT * INTO #temp FROM
(
SELECT DISTINCT col_1, col_2
FROM table_b
WHERE b.col_1 IS NOT NULL
AND b.col_2 IS NOT NULL
AND b.id NOT IN
(
SELECT b.id
FROM table_b b
JOIN table_a a WITH(NOLOCK)
ON b.col_1 = a.col_1
AND b.col_2 = a.col_2
)) t
INSERT INTO table_a (col_1, col_2) SELECT col_1, col_2 FROM #temp
COL_1:varchar型 col_2:varchar型
table_a:主キーシーケンシャルにクラスタ化col_1で一意のクラスタ化されていないIDはcol_2を含み、col_2では一意にクラスタ化されていません。col_1
バージョン1 I/O
テーブル 'table_b'。スキャンカウント34、論理読取り118、物理読取り0、読取り先読み0、論理読取り0、論理読取り0、論理読取りLOB先読み0を含む。 表 'table_a'。スキャンカウント0、論理読取り109404、物理読取り8761、先読み読取り7761、論理読取り0、論理読取り0、論理読取りLOB先読み0を含む。 表「ワークテーブル」。走査カウント0、論理的、物理0を読み出し、0を読み取り、先読み0を読み取り、ロブ論理は、ロブの物理0を読み出し、0を読み取る先読みは0
(4997行(s)は影響を受けた)
を読み出しロブバージョン2 I/O
テーブル 'table_b'。スキャンカウント34、論理読取り118、物理読取り0、読取り先読み0、論理読取り0、論理読取り0、論理読取りLOB先読み0を含む。 表 'table_a'。スキャンカウント0、論理読み取り35454、物理読み取り0、先読み読み取り5435、先読み読み取り5435、論理読み取り0、論理読み取り0、読み取り先読みLOB 0を読み取る。 テーブル '#temp _______________________________________________________________________________________________________________ 00000044D848'。スキャンカウント0、論理読取り5045、物理読取り0、読取り先読み0、論理読取り0、論理読取り0、論理読取りLOB先読み0を含む。 表「ワークテーブル」。走査カウント0、論理的、物理0を読み出し、0を読み取り、先読み0を読み取り、ロブ論理は、ロブの物理0を読み出し、0を読み取る先読みは0
(4994行(s)は影響を受けた)
を読み出しロブ(1行が該当) テーブル 'table_a'。スキャンカウント0、論理読取り105486、物理読取り331、先読み読取り5940、論理読取り0、論理読取り0、論理読取りLOB先読み0を含む。 表「ワークテーブル」。スキャンカウント2、論理読取り10412、物理読取り0、読取り先読み0、論理読取り0、論理読取り0、論理読取り0、読込み先読み0である。 テーブル '#temp _______________________________________________________________________________________________________________ 00000044D848'。スキャンカウント1、論理的、物理的には0を読み取り、52を読み取り、先読み0を読み取り、ロブ論理は、ロブの物理0を読み出し、0を読み取る先読みは0
(4994行(s)は影響を受けた)
を読み出しロブバージョン1はバージョン2よりもかなり遅いです。物理的な読み込み回数が多いためです。
物理的な読み取り回数が非常に異なる理由は明らかですが、表面的には両方のバージョンが同じ作業をしているように見えます。
私はホットとコールドとキャッシュでこれらの多くの時間を実行し、両方のバージョンで一貫した動作が見られました。
クエリ計画http://imgur.com/a/lBpS0 –