【问题标题】:Get the min() value from columns where duplicates are associated with ids从重复项与 id 关联的列中获取 min() 值
【发布时间】:2013-12-21 13:44:57
【问题描述】:

所以,为了简化我的问题如下:

A.我传入 CustomerID,每个客户可以有多个订单。我需要找到每个客户每个订单的最小 ProductID。

B.完成后,我需要运行主查询(以返回数据集),我想在其中显示所有订单以及类别和代码(每个产品)。结果应该为产品、类别和代码显示 NULL,其中 ProductID 在 A 部分中找到的 ProductID。

谢谢

(所有这些都是带有外键的单独表。我可以处理连接,只是“minimum ProductID per Order per Customer”让我很困惑。)

【问题讨论】:

    标签: sql min


    【解决方案1】:

    您没有提供有关您的特定数据库架构的太多信息,因此很难提供准确的答案。基本上,您希望使用 MIN 和 Group By 的组合(根据您的架构,可能还需要一两个连接)。

    下面提供一个粗略的例子:

    select min(ProductID) from Orders o
    inner join Customers c 
      on o.CustomerID = c.CustomerID
    group by (productID)
      having c.CustomerID = <customer id value>
    

    问候,

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-17
      • 2018-10-01
      • 1970-01-01
      • 2014-09-12
      • 2017-03-15
      • 2020-07-09
      相关资源
      最近更新 更多