【问题标题】:SQL query to show most ordered productSQL查询显示最订购的产品
【发布时间】:2010-02-09 08:56:14
【问题描述】:

我有这个表结构

产品
product_id (PK)
名字

Order_Detail
order_detail_id
产品编号
数量

示例数据

产品:
1 个产品1
2 产品2
3 产品3
4 产品4
5 产品5

Order_Detail : 1 3 2
2 3 1
3 3 1
4 2 1
5 2 1
6 1 1
7 4 1
8 5 1
9 1 1
10 2 1
11 3 1

请帮我根据产品的订购次数获得前 3 名的订购产品?

【问题讨论】:

    标签: sql mysql


    【解决方案1】:

    我认为这很有效:

    SELECT p.`product_id`, p.`name`, SUM(o.`quantity`) AS quantity
    FROM `Order_Detail` AS o
        INNER JOIN `Product` AS p
        ON o.`product_id` = p.`product_id`
    GROUP BY o.`product_id`
    ORDER BY SUM(o.`quantity`) DESC, p.`name` ASC
    LIMIT 3
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-03
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 2018-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多