>  기사  >  데이터 베이스  >  有关QlikView循环的疑惑

有关QlikView循环的疑惑

WBOY
WBOY원래의
2016-06-07 15:54:231106검색

问题描述: 查阅了QlikView的help后知道QlikView的循环语法如下面Code所示: LET vTest1 = 1;LET vTest2 = 30;DO WHILE (vTest1 $(vTest2))LET vTest1 = $(vTest1) + 1;LOOP 可是令人不解的是为何把DO WHILE (vTest1 $(vTest2))替换成下面的方式后就变成死循

问题描述:

查阅了QlikView的help后知道QlikView的循环语法如下面Code所示:

LET vTest1 = 1;
LET vTest2 = 30;

DO WHILE (vTest1 < $(vTest2))

	LET vTest1 = $(vTest1) + 1;
LOOP
可是令人不解的是为何把DO WHILE (vTest1 DO WHILE ($(vTest1)

Google了很多次,只是说在while条件只会被编译一次,而循环中的所有值都会在每一次循环中都被解析。

原文是这样的:Each condition is interpreted only the first time it is encountered but is evaluated for every time it encountered in the loop.

因此上面的条件就变成这样 DO WHILE (1 解决方法:
1. 在while条件里面不使用dollar sign,像这样DO WHILE (vTest1 2. 在loop(循环)语句中使用EXIT DO WHEN如下:

LET vTest1 = 1;
LET vTest2 = 30;

DO WHILE ($(vTest1) < $(vTest2))

	LET vTest1 = $(vTest1) + 1;

	EXIT DO WHEN ($(vTest1) >= $(vTest2));

LOOP
疑问:
为何QklikView只会对条件编译一次?
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:Giraph基础介绍다음 기사:搭建ReplicaSet复制集