2009-08-17 70 views
0

我無法讓Linq to Sql查詢工作。基本上,我只需要一個表中列的總和,以便只匹配某個條件的行。一個簡化的版本是這樣的:LINQ to SQL - 選擇SUM與WHERE

訂單=包含產品爲了 OrderProducts是在爲了 產品=關係在表中的產品=有關產品含有表信息

我可以得到的數量的總和同類產品:

Dim totalQty = requests.Sum(Function(p) p.OrderProducts.Sum(Function(q) CType(q.ProductQty, Nullable(Of Integer)))) 

(要求是訂單的IQueryable的)

但我也需要得到數量的總和,其中實際商品M有一定的條件。喜歡的東西...

 Dim totalQty = requests.Sum(Function(p) p.OrderProducts.Sum(Function(q) CType(q.ProductQty, Nullable(Of Integer)))) 

... WHERE p.OrderProducts.Product.ProductAttribute =真

我將如何去獲得該查詢與額外的where子句只獲取qtys的總和productAttribute = true的地方?謝謝!

回答

0
Dim totalQty = requests _ 
    .Sum(Function(p) p.OrderProducts _ 
     .Where(Function(q) q.Product.ProductAttribute = true) _ 
     .Sum(Function(q) CType(q.ProductQty, Nullable(Of Integer)))) 
+0

完美!非常感謝! – Ryan 2009-08-17 15:22:55