1
日付の比較を行うサブクエリのパフォーマンスが悪い
サブクエリを使用して、一致するフィールドを持つすべての以前のレコードの合計数を検索する場合、5万件のレコードがあるテーブルでパフォーマンスはひどいです。サブクエリがなければ、クエリは数ミリ秒で実行されます。サブクエリを使用すると、実行時間は1分以上になります。 このクエリの場合、結果は次のようになります。 特定の日付範囲内のレコードのみを含めます。 日付範囲に関係なく、現在のレコードを含まない、以前のすべてのレコードのカウントを含めます。 基本的なテーブルスキーマ Activity ====================== Id int Identifier Address varchar(25) ActionDate datetime2 Process varchar(50) -- 7 other columns サンプルデータ Id Address ActionDate (Time part excluded for simplicity) =========================== 99 000 2017-05-30 98 111 2017-05-30 97 000 2017-05-29 96 000 2017-05-28 95 111 2017-05-19 94 222 2017-05-30 推測される結果 日付範囲のため2017-05-29に2017-05-30 …