簡體   English   中英

通過 LINQ 從實體中獲取最后 N 個元素

[英]Get Last N Element From Entity by LINQ

我想找到表的最后一個主 ID。 表名:table1 列:Id、name、age

var id = _db.table1.OrderByDescending(x => x.Id).FirstOrDefault().Id

當記錄超過 100 000 條記錄時,上述查詢會導致性能問題。 如何提高性能?

假設 _db.Table1 是可查詢的,您可以嘗試以下操作:

var id = _db.table1.Max(e => e.Id);

如果性能是一個問題,您可以對數據庫發出原始查詢:

int id = _db.table1.SqlQuery<int>("SELECT MAX([Id]) FROM dbo.table1").FirstOrDefault<int>();

實體框架原始 SQL 查詢: https : //msdn.microsoft.com/en-us/library/jj592907%28v=vs.113%29.aspx

就數據的選擇而言,沒有比這更快的了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM