【发布时间】:2018-04-27 07:07:20
【问题描述】:
我正在申请管理库存,我的一项职能是报告。
我正在尝试制作一份基本的前五名产品销售报告,但我无法理解它的外观。
到目前为止,我可以返回表的 count() 的 max(),例如
SELECT MAX(product_quantity) FROM
(SELECT COUNT(quantity) as product_quantity FROM
sales_products) as derived;
现在,如果我在选择中添加 product_id,我会收到未知字段的错误:
SELECT product_id, MAX(product_quantity) FROM
(SELECT COUNT(quantity) as product_quantity FROM
sales_products) as derived;
我的两个问题是为什么我得到未知字段,因为我引用了表(尝试使用表名或派生的别名)以及如何获得前 5 个而不是第一个?非常感谢您的时间和耐心!
下面是erd和数据结构的图片
【问题讨论】:
-
仔细查看您从第一个查询中获得的结果。意识到您目前没有计算 每个产品
COUNT(我猜您想要一个SUM代替)。如果您删除MAX,您仍然只会看到一个结果行。 -
你确实是对的!所以,如果我更接近,我得到的是所有数量字段的计数?
标签: mysql sql mysql-error-1054