2011-02-07 66 views
2

將如何使用LINQ給該數據庫表中的數據我拉LINQ得到過去12個月

過去12(個月)由 SERVICEID過濾,排序記錄按最近

- Date   ServiceId  Views  Clicks 
- 2009-03-01  3   88107  244223 
- 2009-03-01  5   41563  94770 
- 2009-03-01  7   24165  45378 
- 2009-03-01  8   16415  24311 
- 2009-03-01  4   50341  127114 
- 2009-04-01  3   70646  211999 
- 2009-04-01  5   40380  102241 
- 2009-04-01  7   23905  40768 
- 2009-04-01  8   18996  29220 
- 2009-04-01  4   45685  112635 
- 2009-05-01  3   81044  215753 
- 2009-05-01  5   46273  121343 
- 2009-05-01  7   25744  41578 
- 2009-05-01  8   21122  32607 
- 2009-05-01  4   54349  126914 
- 2009-06-01  3   74045  201224 
- 2009-07-01  3   60558  175043 
- 2009-07-01  5   28802  69091 
- 2009-07-01  7   16250  33784 
- 2009-07-01  4   36265  88727 
- 2009-08-01  3   59030  170027 
- 2009-08-01  5   27923  63875 
- ... 

回答

6

這會有幫助嗎?

「someServiceId」是您要過濾的服務ID。

前12個月,現在:

from x in data 
where x.Date > DateTime.Now.AddMonths(-12) && x.ServiceId == someServiceId 
orderby x.Date descending 
select x; 

12個月前從最新的條目:

from x in data 
let m = data.OrderByDescending(x.Date).First() 
where x.Date > m.Date.AddMonths(-12) && x.ServiceId == someServiceId 
orderby x.Date descending 
select x; 

我沒有通過編譯器運行此,但希望它應該得到你在正確的方向。

+0

這x.Date>不是<;) – Guillaume86 2011-02-07 09:30:43

+0

排序。)...... – TWith2Sugars 2011-02-07 09:32:22

0
var request = DataContext.YourTable.Where(e => DateTime.Now.AddMonths(-12) < e.Date) 
        .Where(e => e.ServiceId == filterServiceId) 
        .OrderByDescending(e => e.Date) 
相關問題