2017-02-16 123 views
0

我想检索实体框架中每个MobileNo的最后插入记录。获取entityframework中每个组的最后记录?

这是我的表格数据。

ID  RegNo  MobileNo CreatedDate 
26727 190077348 9696562673 13-02-2017 06:31 
26729 123782783 9696562673 13-02-2017 06:35 
45779 530087328 5878525875 07-02-2017 07:23 
99902 120058572 7379130560 08-02-2017 12:39 
64477 180073650 7417516480 10-02-2017 13:47 
81839 240087264 7754990580 11-02-2017 10:47 

,并希望输出如下

ID  RegNo  MobileNo CreatedDate 
26729 123782783 9696562673 13-02-2017 06:35 
45779 530087328 5878525875 07-02-2017 07:23 
99902 120058572 7379130560 08-02-2017 12:39 
64477 180073650 7417516480 10-02-2017 13:47 
81839 240087264 7754990580 11-02-2017 10:47 

回答

8

假设你的表的名称是Items

var result = dbContext.Items.GroupBy(x => x.MobileNo) 
         .Select(x => x.OrderByDescending(y => y.CreatedDate).First()); 

运行示例:https://dotnetfiddle.net/3ud2pB

1

尝试。

;WITH cte AS 
(
    SELECT *, 
     ROW_NUMBER() OVER (PARTITION BY MobileNo ORDER BY CreatedDate DESC) AS rn 
    FROM yourtablename 
) 
SELECT * 
FROM cte 
WHERE rn = 1 
相关问题