跳到主要内容 跳到补充内容

Previous - 脚本函数

Previous() 使用以前输入记录的数据查找 expr 表达式的值。在内部表格的首个记录中,此函数将返回 NULL 值。

语法:  

Previous(expr)

返回数据类型:

参数:  

Previous 参数
参数 说明
expr 表达式或字段包含要度量的数据。

表达式可以包含嵌套的 previous() 函数以访问能够进一步回滚的记录。数据直接从输入源获取,使其也可引用尚未载入 QlikView 的字段,也就是说即使它们存储在相关的数据库中也可以引用。

限制:  

在内部表格的首个记录中,此函数返回 NULL 值。

示例 1:  

Sales2013:

Load *, (Sales - Previous(Sales) )as Increase Inline [

Month|Sales

1|12

2|13

3|15

4|17

5|21

6|21

7|22

8|23

9|32

10|35

11|40

12|41

] (delimiter is '|');

 

通过在 Load 语句中使用 Previous() 函数,我们可以将 Sales 的当前值与上一个值进行比较,并在第三个字段 Increase 中使用该值。

示例 1 结果
Month Sales Increase
1 12 -
2 13 1
3 15 2
4 17 2
5 21 4
6 21 0
7 22 1
8 23 1
9 32 9
10 35 3
11 40 5
12 41 1

示例 2:  

Sales2013:

Load * Inline [

Month|Sales

1|12

2|13

3|15

4|17

5|21

6|21

7|22

8|23

9|32

10|35

11|40

12|41

] (delimiter is '|');

 

Sales:

NoConcatenate Load *, (Sales - Previous(Sales) )as Increase Resident Sales2013 where Month > 6;

 

Drop Table Sales2013;

 

在此示例中,我们使用 WHERE 子句排除 Month 等于 6 或小于 6 的记录。此时仍然可以使用 Previous() 作为函数引用从加载中排除的数据。

在此情况下,计算 Month=7Increase 时可以引用 Month=6Sales 值(该已值从加载中排除)。

示例 2 结果
Month Sales Increase
7 22 1
8 23 1
9 32 9
10 35 3
11 40 5
12 41 1

了解详情

 

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们如何改进!

加入分析现代化计划

Remove banner from view

使用分析现代化计划实现现代化,同时不损害您宝贵的 QlikView 应用程序。 单击此处 了解更多信息或联系: ampquestions@qlik.com