sql语句分类汇总,排序查询语句怎么实现

id 商品id 商品数量
1 1 2
2 1 3
3 2 3
4 3 2
5 3 1
.....
这个是订单表,里面有商品的id和数量
我要按照商品的id进行分类,得到商品id相同
的商品数量的总和,然后,根据商品数量进行排序,
最后得到从大到小的商品id顺序,这个用sql语句怎么实现
大神求救
还有一张商品表,再通过上述排序后id怎么拿到商品表中的商品的排序呢

第1个回答  2013-11-29
select 商品id,sum(商品数量) 商品数量 from 表名 group by 商品id order by sum(商品数量) desc

这样试试

第2个回答  2013-11-29
select 商品ID ,sum(商品数量) as 商品数量
from u_table
group by 商品ID
Order by 商品ID,sum(商品数量)
--以上为汇总
select 商品ID , 商品数量
from u_table
group by 商品ID
Order by 商品ID, 商品数量本回答被网友采纳
第3个回答  2013-11-29
SELECT A.ID,SUM(A.CNT) CNT
FROM TABLE A
GROUP BY A.ID
ORDER BY CNT,A.ID DESC
不过汇总后商品ID变为唯一了,先按数量排序这个没问题,但再按商品ID顺序从大到小排序这个意义就不大了。追问

最后不是按照商品id排序,是要获取到排序后的商品id信息,是按照分类汇总后的商品数量排序,

追答

哦,那这样即可,按照商品ID汇总后商品数量的排序。
SELECT A.ID,SUM(A.CNT) CNT
FROM TABLE A
GROUP BY A.ID
ORDER BY CNT

第4个回答  2013-11-29
select 商品id , sum(商品数量) as total from 表名 group by 商品id order by total desc本回答被提问者采纳
第5个回答  2013-11-29
select 商品id from 表或视图名
group by 商品id
order by sum(商品数量) desc
相似回答