mysql查询获得产品数量和数量
SELECT product,quantity,count(product) AS count
FROM order_table WHERE order_id in
(select order_id from progress)
group by product
使用此查询我收到产品名称和产品数量。但是,我的表中还有数量列。所以,当产品获得2数量时如何将这个数量与产品数量一起加上这个查询。mysql查询获得产品数量和数量
上述图像中有3种汉堡包产品以及用于一个汉堡包产品2量,在这里,我需要显示像产品:汉堡和总量:披萨和总量:3
没有样本数据是很难猜测,但是看着你的问题,看起来你需要像这样
SELECT product
,sum(quantity) as total_quantity
,count(*) AS count
FROM order_table
WHERE order_id in
(select order_id from progress)
group by product
组我应该得到双方的产品和组合 –
更新你的问题的数量结果。给你的样本数据和预期的输出,并告诉为什么这个查询不给你。 – Utsav
我得到的结果是我所需要的'SELECT product,sum(quantity)as total_quantity,count(product)AS count FROM order_table WHERE order_id in (select order_id from progress)group by product –
的选择产品,SUM(数量)的“量”,计数(产品)AS计数 FROM order_table WHERE order_id在 (select order_id from progress) 按产品分组
只需在数量上使用聚合函数总和即可。
谢谢....... –
需要一些示例数据。输入数据和预期输出。 至此尝试一下这个查询 -
SELECT Product
,SUM(Quantity) AS Total_Quantity
,COUNT(Product) AS Product_Count
FROM order_table
WHERE order_id IN (
SELECT DISTINCT order_id
FROM Progress
)
GROUP BY Product
是的,这对我有用 –
你能解释它是如何工作的 –
这只是一个基本的GROUP BY。简而言之,如果你的select语句有一些不涉及像SUM,AVG,COUNT,MAX,MIN等聚合的列,那么你应该在你的GROUP BY子句中提及这些列。 而在WHERE子句中,我刚从Progress表中选择了DISTINCT,即唯一的Order_Id。 不要忘了把它标记为答案。 –
删除'通过product' –