【问题标题】:How do I sort on Count_Orders in MySQL in this query?如何在此查询中对 MySQL 中的 Count_Orders 进行排序?
【发布时间】:2016-12-06 13:49:42
【问题描述】:

对于一项作业,我需要得到一个输出,给出至少 5 次或更多次订购的产品类别,并且首先是订购次数最多的类别。

SELECT P.category,count(O.order_id)AS COUNT_Orders
FROM Orders O,Product P
WHERE O.product_id = P.product_id
GROUP BY Category
HAVING COUNT(*)>=5

这是我目前的查询,但我找不到在 MySQL 中不出错的情况下使用 COUNT_Orders 上的 Order by 的方法。

有人可以帮我解决这个问题吗?

【问题讨论】:

  • 您是如何在查询中添加Order by 的?应该在末尾添加..HAVING COUNT(*)>=5 Order by COUNT_Orders

标签: mysql sql querying


【解决方案1】:

你试过了吗?

SELECT P.category, count(O.order_id) as COUNT_Orders
FROM Orders O JOIN
     Product P
     ON O.product_id = P.product_id
GROUP BY Category
HAVING COUNT(*) >= 5 
ORDER BY COUNT_Orders;

除了添加ORDER BY 子句之外,此版本还使用正确、明确的JOIN 语法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-02
    • 2010-10-07
    • 2010-10-13
    • 1970-01-01
    • 1970-01-01
    • 2014-02-04
    • 1970-01-01
    • 2021-11-24
    相关资源
    最近更新 更多