現象
ROW_NUMBER() 関数などの一部のランク付け関数を使用するクエリがあるものとします。 Microsoft SQL Server 2008 のテーブルに対してクエリを実行すると、並列実行プランがクエリに使用されていると、間違った結果が返されることがあります。 注:この問題は、Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) 以降のバージョンで修正されています。
解決方法
この問題は、SQL Server の次の累積的な更新プログラムで最初に修正されました。
SQL Server 2008 SP3 の累積更新プログラム14 /en-us/help/2893410
SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムを確認します。
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
関連情報
類似した問題に関する修正プログラムの詳細については、次の記事の番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
970198 修正: SQL Server 2008 または SQL Server 2008 R2 で row_number 関数を使用するクエリを実行したときに、誤った結果が表示される
2433265 修正: SQL Server 2008 および SQL Server 2008 R2 で ROW_NUMBER 関数と左外部結合を使用するクエリを実行したときに、誤った結果が表示されることがあります。
2589980 修正: row_number 関数を使用する SELECT または DML ステートメントと、SQL Server 2008 での並列実行プランを実行すると、間違った結果または制約違反が発生する