次の SQL ステートメントのパフォーマンスの問題を調査しています。
Update tableA 
set columnA1 = columnB1 
from tableB 
where tableA.columnA2 = tableB.columnB2
問題は、それtableA.columnA2がタイプnvarchar(50)でありながら、tableB.columnB2タイプであるということですbigint。私の質問は、SQLサーバーがそのようなクエリをどのように実行するかです。比較演算子を使用して比較cast bigintするか、比較演算子にキャストして比較します。nvarcharnvarcharnvarcharbigintbigint
もう 1 つ: これらの列の型をそのままにしておく必要がある場合tableA.columnA2、tableB.columnB2' このクエリを書き直してパフォーマンスを向上させるにはどうすればよいでしょうか?
注: このクエリは約 100,000 レコードに対してのみ機能しますが、永遠に時間がかかります。
よろしくお願いします。