つのテーブルを同期することが必要になる場合があります。プロシージャまたはバッチを実行します。評価および処理されます。ステートメントを単一のステートメントに置き換えることができます。テーブルと対象テーブルのデータの処理回数が最小限に抑えられるので、クエリのパフォーマンスが向上します。パフォーマンスが向上するかどうかは、インデックスが正しいか、結合が存在するかなど、いくつかの考慮事項によって決まります。ステートメントを使用するときのパフォーマンスを最適にするための推奨事項について説明します。ステートメントのパフォーマンスを向上させるには、次のインデックスのガイドラインに従うことをお勧めします。インデックスを作成します。対象テーブルの結合列に一意なクラスタ化インデックスを作成します。これらのインデックスによって結合キーが一意になり、テーブルのデータが並べ替えられるようになります。オプティマイザが重複行を見つけて更新するために追加の検証処理を実行する必要がなく、追加の並べ替え操作が不要になるので、クエリのパフォーマンスが向上します。列にクラスタ化インデックスを作成します。使用したデータの挿入、更新、および削除」を参照してください。ステートメントのパフォーマンスを向上させて正しい結果が得られるようにするには、次の結合のガイドラインに従うことをお勧めします。テーブルと対象テーブルのデータを照合する基準を判断する検索条件のみを指定します。テーブル内の対応する列と比較する列のみを指定します。定数などのその他の値との比較は指定しないでください。テーブルまたは対象テーブルから行を除外するには、次のいずれかの方法を使用します。句で、行をフィルタ選択するための検索条件を指定します。テーブルまたは対象テーブルとして参照します。ビューが対象テーブルに対して定義されている場合、これに対するアクションはビューの更新条件を満たす必要があります。ビューを使用してデータを更新する方法の詳細については、「ビューを使用したデータ変更」を参照してください。テーブルまたは対象テーブルから行を除外します。句で追加の検索条件を指定する方法に似ており、不適切な結果が返される可能性があります。この方法はできるだけ使用しないか、十分にテストしてから実装することをお勧めします。使用したデータの挿入、更新、および削除」を参照してください。ステートメントでの結合と同じ方法で最適化されます。オプティマイザは、複数の候補の中から最も効率的な結合の処理方法を選択します。チューニングの高度な概念」を参照してください。回だけスキャンされ、データを並べ替える必要がないためです。句を指定することで、特定の結合を強制的に使用することができます。ヒントとしてハッシュ結合を使用しないことをお勧めします。この種類の結合ではインデックスが使用されないためです。(Transact-SQL)」を参照してください。句で入れ子になったループ結合を指定します。オプティマイザがステートメントを内部でパラメータ化する場合があります。これは、クエリに含まれるリテラル値がすべてパラメータに置き換えられることを意味します。エンジンの機能が向上します。クエリをコンパイルおよび再コンパイルする頻度が下がるので、クエリのパフォーマンスが向上する場合があります。ステートメントには適用されません。ステートメントよりもパフォーマンスが低くなる可能性があります。クエリのパフォーマンスを向上させるには、次のパラメータ化のガイドラインに従うことをお勧めします。句ですべてのリテラル値をパラメータ化します。ステートメントを組み込むことができます。ガイドを使用したクエリのパラメータ化動作の指定」を参照してください。設定することを検討します。このオプションを設定する場合は注意が必要です。レベルの設定で、データベースに対するすべてのクエリの処理方法に影響します。詳細については、「強制パラメータ化」を参照してください。テーブルと対象テーブルが結合され、挿入、更新、または削除操作の対象とならない行が削除された後に影響を受ける、行の数または割合を指定します。句を使用すると、結合された行の数が指定の値まで減少し、挿入、更新、または削除操作が残りの結合された行に順序付けなしで適用されます。句で定義された各操作に行を割り当てる順序に決まりはありません。行が挿入されたりします。操作を大きなテーブルに対してバッチで実行するために使用します。句を使用する場合は、次の影響について理解しておくことが重要です。パフォーマンスに影響する場合があります。スキャンが実行されます。スキャンが実行されます。結果として行われる読み取り操作が、クエリのパフォーマンスに影響する場合があります。不適切な結果になる可能性があります。一連のすべてのバッチが新しい行を対象としていることを確認してください。新しい行を対象としていない場合は、対象テーブルに重複行が誤って挿入されるなどの不適切な動作が発生する可能性があります。テーブルに含まれている場合に発生する可能性があります。正しい結果を得るには、次の操作を実行します。句を使用して、既存の対象行に影響するソース行と本当に新しい行を特定します。句で追加条件を使用して、対象行が以前のバッチで既に更新されているかどうかを調べます。句を使用してバッチ処理で対象を変更する正しい方法を示します。句の不適切な実装方法を示しています。列のチェックが指定されています。行として扱われるので、不要な挿入操作が行われることになります。inserted.*;GO次の例も不適切な方法を示しています。行として扱われるので、不要な挿入操作が行われることになります。ソース行の挿入が試行されます。ファイルから対象テーブルにデータを効率よく一括読み込みできます。これにより、ファイル全体が単一のバッチで処理されます。一括マージ処理のパフォーマンスを向上させるには、次のガイドラインに従うことをお勧めします。対象テーブルの結合列にクラスタ化インデックスを作成します。ファイルの並べ替え方法を指定します。ファイルが並べ替えられていないことを前提に実行されます。ヒントを使用して順序を指定することが重要です。ヒントは実行時に検証されます。ストリームが指定されたヒントに適合していない場合は、エラーが発生します。ファイルのデータの並べ替え順が対象テーブルと一致するようになります。追加の並べ替え操作が不要になり、不要なデータのコピーが必要なくなるので、クエリのパフォーマンスが向上します。データを一括読み込みします。データとの結合に使用される列にクラスタ化インデックスが作成されます。キー列にマップされます。フォルダに作成します。つのデータ列を記録します。次のデータを使用します。フォルダに作成します。次の情報を使用します。ステートメントのパフォーマンスの測定と診断に役立ちます。ステートメントに対するクエリの最適化の数が返されます。ステートメントの結果として使用するトリガの実行プランの種類が返されます。ステートメントの場合と同じ方法で収集されます。トレースの概要」を参照してください。Cookie利用条件サイトのフィードバック。