第1返回我有一個測量表如下:
的SourceID:整數
時間戳:日期/時間
測量:整數LINQ在重複序列
樣本數據看起來像這樣(更下面的星號):
SID | TimeStamp |測量
10 | 02-01-2011 12:00:00 | 30 *
10 | 02-01-2011 12:10:00 | 30
10 | 02-01-2011 12:17:00 | 32 *
10 | 02-01-2011 12:29:00 | 30 *
10 | 02-01-2011 12:34:00 | 30
10 | 02-01-2011 12:39:00 | 35 *
10 | 02-01-2011 12:46:00 | 36 *
10 | 02-01-2011 12:39:00 | 36
10 | 02-01-2011 12:54:00 | 36
11 | 02-01-2011 12:00:00 | 36 *
11 | 02-01-2011 12:10:00 | 36
11 | 02-01-2011 12:17:00 | 37 *
11 | 02-01-2011 12:29:00 | 38 *
11 | 02-01-2011 12:34:00 | 38
11 | 02-01-2011 12:39:00 | 37 *
11 | 02-01-2011 12:46:00 | 36 *
11 | 02-01-2011 12:39:00 | 36
11 | 02-01-2011 12:54:00 | 36
我需要一個LINQ查詢,當Measurement值與具有相同SourceId的前一行(即每行標有星號)不同時,它將只返回行。該表應按SourceId,然後TimeStamp排序。
來自查詢的數據將用於繪製一個圖,其中每個SourceId是一系列圖。源表有幾百萬行,重複測量的數量是幾千。由於這些重複的測量值對結果圖沒有任何影響,所以在將數據傳遞給我的圖形控件進行渲染之前,我想消除它們。
我嘗試過以各種方式使用Distinct(),並在此查看了聚合查詢http://msdn.microsoft.com/en-us/vcsharp/aa336746,但沒有看到明顯的解決方案。
順便問一句,「Distinct」有什麼問題?它應該是你需要的,你可以發佈代碼嗎? – Vlad 2011-03-05 23:40:08
@Vlad,看看最後三行。他們有不同的時間價值,但只有第一個是想要的。 – 2011-03-06 13:05:08