0

我无法让 Linq to Sql 查询工作。基本上,我想要一个表中的列的总和,仅用于匹配特定条件的行。一个简化的版本是这样的:

Orders = 包含产品的订单 OrderProducts = 包含订单中产品的关系表 Products = 包含产品信息的表

我可以得到这样的产品数量的总和:

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

(Requests 是 IQueryable 的订单)

但我还需要获得实际产品满足特定条件的数量总和。就像是...

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

... WHERE p.OrderProducts.Product.ProductAttribute = true

我将如何使用附加的 where 子句获取该查询,以仅获取 productAttribute = true 的 qtys 的总和?谢谢!

4

1 回答 1

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))))
于 2009-08-17T14:57:14.293 回答