換一種寫作風格。本節講groupby操作。
在所有的Linq To Sql操作中,GroupBy是最難理解的一個。因為,這裡和Sql的出入較大。而Group真的就能返回n多組。
打開vs,新建一工程,加入System.Data.Linq.dll的引用。把northwind數據庫做個映射,添加到工程裡。創建一Northwind類的對象。在這裡呢,我們要做分組統計,我們要先明白什麼是分組。在我們開始設計product表時,我們欲留了一列叫做CategoryID。 這個字段,代表了這條記錄中的產品,歸屬於那個類別。如圖,字段的設計。
可以簡單的舉例,比如,當CategoryID的值為1時,就表示,對應的記錄的產品是飲料類的。當它為2時,代表調味品類的。具體代表那一類,要看事先的約定。一般會專門有個表來保存這個約定。在northwind中,用Categories 表來保存這個約定。下面是catagorIEs表中的紀錄。
Categories 和Product表,通過CategoryID字段關聯關系。也就是說,Product表中,CategoryID字段所代表的意思,保存在CategorIEs 表中。好了,知道分組的概念了,我們開始分類統計吧。在Linq To Sql的所有操作中,groupby算是比較難理解的一個。我要友好的提醒你注意下這裡的分組所用的字段哦,這個將來是要被用做繼承的哦。