在 C# 中使用 LINQ 从实体框架中的大表获取 .Count 的最快方法

CSh*_*per 5 c# linq entity-framework

我正在使用Entity FrameworkLINQ。我有一个大约有 50 万条记录的表,我想得到.Count()一个表。最好的方法是什么?

我已经尝试过这个:

// Without WHERE condition. Execution Time = 5864 miliseconds
var count = context.MyTable
                   .AsNoTracking()
                   .Count();

// With WHERE condition. Execution Time = 9825 miliseconds
var count = context.MyTable
                   .AsNoTracking()
                   .Count(x => !x.IsDeleted && (x.Column.Contains(keyword) || x.Column2.Contains(keyword) || x.Column3.Contains(keyword))); 
Run Code Online (Sandbox Code Playgroud)

有没有其他方法或方法来改进这个查询?