求SqlServer2005下分组排序的高效执行Sql语句,该怎么处理

求SqlServer2005下分组排序的高效执行Sql语句
select row_number() over(order by count(b.dc_Id) desc),a.v_Name,count(b.dc_Id) from tb_MenuClass a join tb_Product b on a.i_Id= b.i_BrandId group by a.v_Name

其中tb_MenuCalss 是栏目表,tb_Product是产品表,取得产品最多的栏目,并按产品量来排序,上面是我能写出的语句,求执行效率更高的Sql语句

------解决方案--------------------
你的语句其实 已经很优化了 加索引吧
------解决方案--------------------
on a.i_Id= b.i_BrandId 条件列上加索引