加速一个简单的LINQ查询
本文关键字:简单 LINQ 查询 一个 加速 | 更新日期: 2023-09-27 17:54:59
有没有办法加速这个查询:
return _database.Countries
.Include("Accounts")
.Where(country => country.Accounts.Count > 0)
.ToList();
大约有70个账户和70个国家,这个查询大约需要1.5秒来执行,这是相当长的。
EDIT: _database是一个EntityFramework模型
您可以尝试将Where
子句更改为:
Where(country => country.Accounts.Any())
…但实际上,您的第一站应该是数据库分析器。查看生成的查询,并将其放入您最喜欢的分析器中。检查索引等,就像检查其他SQL查询一样。
一旦你弄清楚为什么生成的SQL很慢,以及你希望 SQL是什么样子,然后你可以开始弄清楚如何改变你的查询来生成SQL。
您可以使用sql profiler来捕获正在对数据库执行的查询,然后使用它可以优化sql服务器上的索引场景。