一个例子
一个例子
先看一张最简单的排名报表

该表数据集为ds1: SELECT 订单.货主城市,订单明细.单价,订单明细.数量 FROM 订单,订单明细 WHERE 订单.订单ID = 订单明细.订单ID
A2单元格表达式为:=ds1.group(货主城市,false)
B2单元格表达式为:=ds1.sum(单价*数量)
预览如下:

通常我们在做这种报表的时候是先将订单总价做一个排序,然后再订单总价编号,将编号做为排名,而润乾报表在这里引入了根坐标表示法,参见:。可以轻松实现排序功能。
在该报表中C2格的内容为:=count(B2[`0]{B2>$B2})+1,该表达式是统计所有订单总价大于当前单元格订单总价的城市个数,然后加一,从而实现对订单总价排名的效果。


下面我们把这个排名报表复杂化,看一下多级的排名如何实现,也就是下图所示的效果:

该报表在上一个报表的基础上增加了货主地区分组,统计排名时不光统计总的排名,还要统计每一地区内的排名,该如何做呢?
在D4单元格输入表达式:=count(C2[A2]{C2>$C2})+1。

该表达式是统计A2单元格扩展后某一区域内的订单总价大于当前单元格订单总价的城市个数,然后加一,从而实现对订单总价多级排名的效果。