润乾 NLQ 课程 - 4 指标计算

4. 指标计算

4.1. 简单指标

查询:平均订单价值

意图:查订单表的平均金额

在 ORDERS 中,定义指标“平均订单价值”,指标词“平均订单价值”,指标函数:?1.avg(金额)。

..

这里使用 SPL 函数,其中?1 表示 ORDERS 表记录全集。

4.2. 有过滤条件的简单指标

查询:2015 年平均订单价值

意图:查订单表的平均金额,过滤条件是签单日期是 2015 年

在 ORDERS 中,指标“平均订单价值”关联簇名称“订单”:

..

查询的条件没有指定字段词,自动在字段簇“订单”中找第一个日期型字段“签单日期”。

4.3. 有固有维度的简单指标

查询:月度平均订单价值

意图:查每个月的订单表平均金额

在 ORDERS 中,定义指标“月度平均订单价值”,固有维度名称设置为 YearMonth。

..

指标函数:?1.avg(金额) 中的?1 表示按固有维度分组后,组内记录构成的排列。这里月度平均订单价值即为按月分组后,组内订单金额求平均。

注意:双击固有维度名称可以选择。

..

4.4. 复杂指标

查询:月连涨天数

意图:在股票表中,按月分组查出每只股票最长连涨天数

定义 STOCKDATA 表的指标“月连涨天数”,固有维度是年月和股票代码,YearMonth,STOCKCODE。

指标函数: n=0,?1.sort(交易日期).max(if( 收盘价 > 收盘价 [-1],n+=1,n=0))

..

注意:读入数据库数据时,不能保证按照交易日期有序,因此这里先用 sort 排序。