When
when 前缀和后缀用于创建确定是否应执行语句或 exit 子句的条件子句。它可以被看作是完整的 if..end if 语句的简洁替代形式。
语法:
(when condition statement | exitstatement when condition )
返回数据类型: 布尔值
在 Qlik Sense 中,布尔 true 值由 -1 表示,false 值由 0 表示。
如果评估条件为 True,则将仅执行 statement 或 exitstatement。
When 前缀可以在已有一个或多个其他语句的语句中使用,包括其他 When 或 Unless 前缀。
适用场景
When 语句返回布尔值结果。通常,当用户希望加载或排除脚本的部分时,这种类型的函数将用作条件。
参数 | 说明 |
---|---|
condition | 用于评估 TRUE 或 FALSE 的逻辑表达式 |
statement | 任意 Qlik Sense 脚本语句,不包括控制语句。 |
exitstatement | exit for、exit do 或 exit sub 子句或 exit script 语句。 |
区域设置
除非另有规定,本主题中的示例使用以下日期格式:MM/DD/YYYY。日期格式已经在数据加载脚本中的 SET DateFormat 语句中指定。由于区域设置和其他因素,系统中的默认日期格式可能有所不同。您可以更改以下示例中的格式以满足您的要求。或者,您可以更改加载脚本中的格式以匹配这些示例。
应用程序中的默认区域设置基于安装 Qlik Sense 的计算机或服务器的区域系统设置。如果您访问的 Qlik Sense 服务器设置为瑞典,则数据加载编辑器将使用瑞典地区设置的日期、时间和货币。这些区域格式设置与 Qlik Sense 用户界面中显示的语言无关。Qlik Sense 将以与您使用的浏览器相同的语言显示。
示例 | 结果 |
---|---|
exit script when A=1; | 当 A=1 语句被计算为 TRUE 时,脚本将停止。 |
when A=1 LOAD * from myfile.csv; | 当 A=1 语句被计算为 TRUE 时,将加载 myfile.csv。 |
when A=1 unless B=2 drop table Tab1; | 当语句 A=1的计算结果为 TRUE 时,如果 B=2 的计算结果为 FALSE,则 Tab1 表将被删除。 |