在制作一个货物销量排名报表时,我用一名SQL语句联合查询出了货物ID及对应的销售总量:
SQL.text:='select 货物ID,sum(销量) as 销量 from 销售表 group by 货物ID order by sum(销量) desc'
现在我想在查询结果中加一个名次字段,显示排名,请教各位这句SQL该如何写
SQL.text:='select 货物ID,sum(销量) as 销量 from 销售表 group by 货物ID order by sum(销量) desc'
现在我想在查询结果中加一个名次字段,显示排名,请教各位这句SQL该如何写
解决方案 »
- Parameter not found Data type mismatch in criteria expression
- 如何 知道UpdateBatch()提交了多少條記錄?
- 调用服务器上的图片
- 程序运行总是过几天会莫名其妙的关闭?(大家快来救救我,UP也有分)解决了我再开帖送分.
- vc与delphi用socket通讯的问题,delphi端不触发onReceive事件?请高手帮助
- 有什么办法,使得clientdataset.open后的数据集,对于数据库中的char字段后面不足的部分,不会有空格出现?
- 肺都要气炸了 !
- 怎么样退出FORM?
- 在delphi下,如何按下一个按扭,让其弹出一个窗体?
- 提示处理问题
- 神啊!救救我吧.!移动短信网关 arg 文件配置
- delphibbs.com(大富翁论坛)怎么进不去了
这样会显示排名字段,而且值全部是“排名值”
我帮你写一个!
保留名次:
Select *,
Rank=(select count(distinct(销量)) from table1 where 销量>=A.销量)
From table1 A
不保留名次:
select *,
rank=(select count(1) from table1 where 销量>A.销量)+1
from table1 A