c# - 用于选择畅销书的 LINQ 查询

标签 c# asp.net linq entity-framework

聪明的人能帮我写一个 LINQ 查询来获得最畅销的产品吗,我在 Entity Framework 中有这 2 个表/类型号:

Orders (OrderedItems)
OrderedItem (Product, Qty)

例如。 (这显然行不通)

Orders.OrderByDescending(o => Sum(o.OrderedItems.Qty))
      .Select(o => o.OrderedItems.Product)

最佳答案

您实际上根本不需要 Orders 表。假设每个订购的商品都有对应的订单,您应该能够做到这一点。

var query =
    (from item in OrderedItem
    group item.Qty by item.Product into g
    orderby g.Sum() descending
    select g.Key).Take(5); // get the top 5 orders

关于c# - 用于选择畅销书的 LINQ 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13189295/

相关文章:

c# - 在静态方法中使用 Winform 对象

c# - 打开SqlConnection "Handle is invalid"错误

javascript - 禁用javascript时,页面不能回传

c# - "The specified network password is not correct"在没有密码的证书上,仅在实时服务器上

c# - 屏蔽元素\属性值,使用Linq

C# 委托(delegate)未绑定(bind)到实例?

c# - C++ 如何克服菱形问题?

c# - 如何从字符串列表中创建一个字符串?

c# - 统计MVC中Child的记录数

c# - FileUpload 在更新面板中不起作用