現在オフラインです。再接続するためにインターネットの接続を待っています

修正: SQL Server 2008 に MIN または MAX 関数に対して、パーティション分割されたビューを使用するクエリを実行すると、クエリをよりも、SQL Server 2005 では、同じクエリを実行するとは、非常に低速実行します。

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:973255
Microsoft Microsoft SQL Server 2008年の修正プログラム 1 つのダウンロード ファイルとして配布しています。修正プログラムは累積的であるため、各新しいリリースにはすべての修正プログラムが含まれています、以前の SQL Server 2008 に含まれていたすべてのセキュリティ修正プログラム リリースを修正します。
現象
Microsoft SQL Server 2008 では、パーティション分割されたビューを作成します。分割ビューに対して MIN または MAX 集計関数を使用して、クエリを実行します。ただし、クエリの実行を同じクエリは、SQL Server 2005 で実行する場合よりも SQL Server の 2008 年にかなり低速ことがあります。

クエリの実行プランを調べるが判明、 トップ 実行プランでは、SQL Server 2005 で演算子が表示されます。ただし、 トップ SQL Server 2008 の実行プラン演算子は表示されません。

など、実行プランを SQL Server 2005 では、次のようになります。
  |--Stream Aggregate(DEFINE:([Expr1190]=MAX([partialagg1191])))       |--Concatenation            |--Top(TOP EXPRESSION:((1)))            |    |--Clustered Index Scan(OBJECT:([Server].[dbo].[Database].[PK]), ORDERED BACKWARD)            |--Top(TOP EXPRESSION:((1)))                 |--Clustered Index Scan(OBJECT:([Server].[dbo].[Database].[PK]), ORDERED BACKWARD)
ただし、SQL Server 2008年での同じクエリの実行プランは、次のようになります。
  |--Stream Aggregate(DEFINE:([Expr1190]=MAX([partialagg1191])))       |--Concatenation            |--Stream Aggregate(DEFINE:([partialagg1191]=MAX([Server].[dbo].[Database].[Column])))            |    |--Index Scan(OBJECT:([Server].[dbo].[Database].[Index]))            |--Stream Aggregate(DEFINE:([partialagg1191]=MAX([Server].[dbo].[Database].[Column])))                 |--Index Scan(OBJECT:([Server].[dbo].[Database].[Index]))
原因
SQL データベース エンジンは実行プランに TOP (1) 操作と、インデックスのシーク演算子を使用するのには、MIN と MAX の集計関数の変換規則について説明します。ただし、このシナリオでは、ルール SQL Server 2008 では機能しません。したがっては、不適切なインデックス、パーティション分割されたビューで使用されます。これにより、パフォーマンスの問題が発生します。
解決方法
この問題に対する修正は SQL Server 2008 Service Pack 1 用の累積的な更新 4 にまずリリースされました。この累積的な更新プログラム パッケージの詳細については、Knowledge Base の資料を参照するのには、次の資料番号をクリックしてください。
973602 SQL Server 2008 Service Pack 1 用の累積的な更新プログラム パッケージ 4
メモ ビルドは累積的であるため、各新しい修正プログラム リリースにはすべての修正プログラムが含まれています、以前の SQL Server 2008 に含まれていたすべてのセキュリティ修正プログラム リリースを修正します。マイクロソフトはこの修正プログラムを含む最新の修正プログラム リリースを適用を検討することをお勧めします。詳細については、Knowledge Base の資料を参照するのには、次の資料番号をクリックしてください。
970365 SQL Server の 2008 SQL Server 2008 Service Pack 1 のリリース後にリリースされたビルドします。
Microsoft SQL Server 2008 SQL Server サービス ・ パックの特定の修正プログラムが作成されます。SQL Server 2008 Service Pack 1 をインストールする SQL Server 2008 Service Pack 1 の修正プログラムを適用する必要があります。既定では、SQL Server サービス パックで提供されている修正プログラム SQL Server の次の service pack に含まれてです。
トレース フラグ 4199 を有効にするのには、この修正プログラムを有効にする必要があります。
状況
マイクロソフトでは、この「対象」に記載されているマイクロソフト製品の問題として認識しています。
関連情報
SQL Server の増分サービス モデルの詳細については、Knowledge Base の資料を参照するのには、次の資料番号をクリックしてください。
935897報告された問題に対する修正プログラムを提供するのには、SQL Server チームの増分サービス モデルを利用します。


SQL Server 更新プログラムの名前付けスキーマの詳細については、Knowledge Base の資料を参照するのには、次の資料番号をクリックしてください。
822499Microsoft SQL Server のソフトウェア更新プログラム パッケージの新しい命名方式は


ソフトウェアの更新の用語の詳細については、Knowledge Base の資料を参照するのには、次の資料番号をクリックしてください。
824684 マイクロソフトのソフトウェア更新プログラムの説明に使用される一般的な用語の説明

警告: この記事は自動翻訳されています

プロパティ

文書番号:973255 - 最終更新日: 07/20/2011 12:59:00 - リビジョン: 3.0

  • kbfix kbqfe kbexpertiseadvanced kbmt kbsurveynew KB973255 KbMtja
フィードバック
/html>