我需要過濾這些結果,只顯示每組的第一行和最後一行。我已經嘗試了一些沒有運氣的方法。以下是Linq查詢和結果。Linq組選擇
LINQ查詢:
var currentAndHistoricalOnly = ViewCustomerGLAndPurchaseRecord
.Where(g=>g.CashierDate > new Datetime(2012,10,01)
&& g.CashierDate < new DateTime(2012,12,01))
.GroupBy(x => x.TransactionId)
.OrderByDescending(d => d.First().CashierDate);
記住,我試圖保持相同的分組,但過濾器(刪除記錄)各組,並採取僅在第一記錄各組的最後一個記錄。
因此,而不是:
組1:
- 記錄1
- 記錄2
- 記錄3
- 記錄4
- 記錄5
組2:
- 記錄1
- 記錄2
- 記錄3
- 記錄4
我需要:
組1:
- 記錄1
- 記錄5
組2:
- 記錄1
- 記錄4
工作很好!!!謝謝。 – EdMore
不客氣:) –