例如表1:商品表 goods
id name fl
1 苹果 水果
2 橘子 水果
3 杯子 日用品
4 果冻 零食
5 冰箱 电器
表2:订单表 order
id goods_id zf_zt price
1 1 1 8
2 3 1 15
3 2 1 7
我想显示产品分类的销量 个数
这样的数据,排序可以不用倒叙
fl nums
水果 2
日用品 1
零食 0
电器 0
nums 是销量的意思。卖出了2份水果。
求解。
select fl,count(fl) AS nums from goods group by fl
select g.fl,count(zf_zt) as nums from order o inner join goods g where g.goods_id = g.id group by g.fl
并不清楚你的 nums代表什么,我按 nums代表订单个数写一个
select
g.fl,count(1) as nums
from order o
left join goods g g.id=o.goods_id
group by g.fl
select fl, sum(zf_zt) /*水果名称 销量*/
from goods, order
where goods.id = order.goods_id
group by goods.id, f1;
select fl, sum(zf_zt) as nums
from goods, order
where goods.id = order.goods_id
group by goods.id, f1;
select goods.fl,count(1)
from
goods left join orders on goods.id=orders.goods_id
group by goods.fl
SELECT
g.fl,sum(IF(o.price is NULL,0,1)) AS nums
FROM goods g
LEFT JOIN order o ON o.goods_id=g.id
GROUP BY g.fl
select g.fl,count(1) as 销量个数
from goods g,order o
where g.id=o.goods_id
group by g.fl
//l另外,你的order表和关键字重名,有问题!