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 は Orders の IQueryable です)

しかし、実際の製品が特定の条件を満たす数量の合計も取得する必要があります。何かのようなもの...

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

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

productAttribute = true の数量の合計のみを取得するために、追加の where 句を使用してそのクエリを取得するにはどうすればよいですか??? ありがとう!

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 に答える