でSourceTable> 15MMレコードとなるBad_Phrase> 3Kの記録を持つ、次のクエリは、SQL Server 2005のSP4上で実行するために、ほぼ10時間かかります。 UPDATE [SourceTable] SET Bad_Count= ( SELECT COUNT(*) FROM Bad_Phrase WHERE [SourceTable].Name like '%'+Bad_Phrase.PHRASE+'%' ) 英語では、このクエリは、フィールドのサブているBad_Phraseに記載されている明確なフレーズの数カウントしているName中でSourceTable、その後のフィールドにその結果を置くことをBad_Count。 このクエリを非常に高速に実行する方法についての提案をお願いします。
SQL Server 2005では、タスクマネージャーを確認し、少なくともSQL Serverに割り当てられているメモリ量を大まかに確認できます。 SQL Server 2008では、SQLServer:Memory Manager / Total Server Memory(KB)perfカウンターが16,732,760を示していても、ワーキングセットまたはコミットサイズが実際に500 MBを超えることはありません。 タスクマネージャで実際にサーバーメモリを表示する設定はありますか?または、SQL Serverでメモリの使用方法を変更した結果ですか