天天看點

如何使用 GroupBy 計數-Count()

十年河東,十年河西,莫欺少年窮。

本節探讨的内容很簡單,就是如果使用GroupBy計數

提供兩種方法:第一:把查詢的資料,轉化為泛型,然後泛型分組計數。

                        第二:Linq語句直接分組計數

有如下範例:

SQL如下:

如何使用 GroupBy 計數-Count()
如何使用 GroupBy 計數-Count()

View Code

想要的結果為:

如何使用 GroupBy 計數-Count()

橘子:2  蘋果:4  桃子:0  香蕉:3

那麼用LINQ該如何實作呢?

首先建立傳回的資料類型:

我們采用cateId 和 cateName 聯合分組:

LINQ如下:

其實上述的LINQ相信大家都能很快寫出來,但是我要強調的是Count('裡面的參數')

也就是這一句:

如何使用 GroupBy 計數-Count()

加上這句篩選,就是為了防止将桃子統計為 1

這樣調試的結果為:

如何使用 GroupBy 計數-Count()

以上便是第一種方法!

那麼第二種方法也很簡單,思路是:左連接配接查詢資料,然後把查詢的結果轉化為泛型,最後利用泛型分組:

在此直接上代碼了:

MSTS類變更如下:

LINQ查詢變更如下:

調試實時資訊如下:

如何使用 GroupBy 計數-Count()

從調試資訊可以看出:因為桃子沒被引用過,是以桃子對應的content為null

那麼泛型的分組也和linq一樣,都是要篩選這個字段的值

泛型分組如下:

@陳卧龍的部落格

繼續閱讀