问一个查询问题
有这么两个表:
A: classid classname
1 衣服
2 裤子
5 帽子
10 鞋子
B:spid spname parentid clicknum
1 男士衣服 1 90 --衣服类别中点击率最高
2 女士衣服 1 80
3 男士裤子 2 70
4 女士裤子 2 90 --裤子类别中点击率最高
5 男士帽子 5 15
6 女士帽子 5 30
7 男士鞋子 10 65 --鞋子中点击率最高
8 女士鞋子 10 54
要求分别把衣服裤子帽子鞋子点击率最高的纪录找出来,再降序排列,结果应该是
spid spname clicknum
1 男士衣服 90
4 女士裤子 90
7 男士鞋子 65
6 女士帽子 30
------解决方案--------------------select spid,spname,clicknum from B,(select spname,max(clicknum) as clicknum from B group by spname) B2 where B.spname=B2.spname and B.clicknum=B2.clicknum order by b.clicknum desc;