EF Core 11でAsSplitQueryが高速化:不要なJOINを自動削除
EF Core 11 makes your split queries faster
EF Core 11(プレビュー3以降)では、AsSplitQuery使用時にコレクションのクエリから参照ナビゲーションのJOINを自動的に除去する改善が入りました。これにより、不要なJOINやORDER BY列が削減され、クエリのパフォーマンスが向上します。本記事では、変更の背景、具体的なSQLの変化、.NET 10と.NET 11でのベンチマーク結果(実行時間が約9%短縮、メモリ割り当てが約10%削減)を紹介します。
データベースはその作業を行い、結果を捨て、クエリプランはそのせいで悪化する。