Evaluate()는 입력 텍스트 문자열을 유효한 Qlik Sense 표현식으로 평가할 수 있는지 확인하고, 평가할 수 있는 경우는 표현식의 값을 문자열로 반환합니다. 입력 문자열이 유효한 표현식이 아니면 NULL이 반환됩니다.
구문:
Evaluate(expression_text)
반환 데이터 유형: 이중
인수
인수
설명
text
평가할 문자열.
정보 메모이 문자열 함수는 차트 표현식에 사용할 수 없습니다.
함수 예 및 결과
함수 예
결과
Evaluate( 5 * 8 )
40를 반환합니다.
예 - 기본 사항 평가
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
Example이라는 데이터 테이블에 로드되는 데이터 집합입니다.
데이터 테이블의 한 필드는 ExpressionText입니다.
Evaluate 함수를 사용하여 필드 ExpressionText를 평가하고 두 개의 새 필드인 Evaluated 및 Evaluatedx4를 반환하는 선행 LOAD.
로드 스크립트
Example:
Load
ExpressionText
, Evaluate(ExpressionText) as Evaluated
, Evaluate(ExpressionText)*4 as Evaluatedx4
;
Load * Inline
[ExpressionText
4
5+3
100/5
123*2
329-9
0123456789012345678
1234567890123456789
0123456.5512
0123456.5512479994578952364859346469
Today()
Bob
];
결과
다음 필드는 데이터 테이블에 로드됩니다.
ExpressionText
Evaluated
Evaluatedx4
Results table
ExpressionText
Evaluated
Evaluatedx4
4
4
16
5+3
8
32
100/5
20
80
123*2
246
984
329-9
320
1280
0123456789012345678
0123456789012345678
4.9382715604938e+17
1234567890123456789
1234567890123456789
4.9382715604938e+18
0123456.5512
0123456.5512
493826.2048
0123456.5512479994578952364859346469
0123456.5512479994578952364859346469
493826.204992
Today()
11/5/2024
182404
Bob
-
-
Evaluate 함수의 출력은 마지막 행을 제외한 모든 ExpressionText 문자열에 대한 값을 반환합니다. 문자열 Bob를 평가할 수 없으므로 함수는 값을 반환하지 않습니다(NULL). 모든 행이 평가되었습니다. 예를 들어, 두 번째 행은 5 및 3을 추가하여 8을 반환합니다. 일부 ExpressionText 문자열은 문자열이 이미 숫자로 평가되기 때문에 문자열을 그대로 반환합니다. 예를 들어, 문자열 0123456789012345678은 같은 숫자로 평가됩니다.
Qlik Sense는 숫자 값에 대해 14자리 정밀도 제한을 갖지만, Evaluate 함수는 18자리 문자열을 숫자로 평가하고 스크립트 내에서 곱셈을 적용했습니다. 이는 스크립트 내에서 매우 큰 숫자를 처리하는 데 유용합니다.
예 - 시나리오 평가
개요
판매 데이터 집합에는 제품, 가격, 할인 정보가 포함되어 있습니다. 이 예에서는 제품의 할인된 가격을 도출합니다.
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
Example이라는 데이터 테이블에 로드되는 데이터 집합입니다.
데이터 테이블의 필드는 다음과 같습니다.
Product
Price
Discount %
Price 및 Discount % 값을 취하고 DiscountedPrice라는 추가 필드를 계산하는 선행 LOAD. 이 새로운 필드는 Evaluate 함수를 사용하여 할인율을 뺀 가격을 계산합니다.