Qlik Sense에서 부울 true 값은 -1로 표시되고 false 값은 0으로 표시됩니다.
inlunarweektodate() 함수는 음력 주의 종료 지점 역할을 합니다. 반대로 inlunarweek() 함수는 base_date가 속하는 음력 주를 확인합니다. 예를 들어, base_date가 1월 5일이면 1월 1일과 1월 5일 사이의 모든 타임스탬프는 TRUE 부울 결과를 반환하고 1월 6일과 7일 및 이후 날짜는 FALSE 부울 결과를 반환합니다.
인수
인수
설명
timestamp
base_date와 비교할 날짜입니다.
base_date
음력 주를 평가하는 데 사용되는 날짜입니다.
period_no
음력 주는 period_no로 오프셋을 지정할 수 있습니다. period_no는 정수이며, 값 0은 base_date를 포함하는 음력 주를 나타냅니다. period_no가 음수 값일 경우 이전 음력 주, 양수 값일 경우 다음 음력 주를 나타냅니다.
first_week_day
0보다 크거나 작을 수 있는 오프셋입니다. 이 함수는 지정된 일수 및/또는 일의 분위수에 따른 연도 시작 날짜를 변경합니다.
사용 시기
inlunarweektodate() 함수는 부울 결과를 반환합니다. 일반적으로 이 유형의 함수는 IF 표현식의 조건으로 사용됩니다. inlunarweektodate() 함수는 평가 날짜가 해당 주의 특정 세그먼트 동안 발생했는지 여부에 따라 사용자가 계산에서 집계 또는 계산을 반환하기를 원할 때 사용됩니다.
예를 들어, inlunarweektodate() 함수를 사용하여 특정 날짜를 포함하여 특정 주에 제조된 모든 장비를 식별할 수 있습니다.
함수 예
예
결과
inlunarweektodate('01/12/2013', '01/13/2013',
0)
timestamp의 값인 01/12/2013이 01/08/2013 ~ 01/13/2013 주에 속하므로 TRUE를 반환합니다.
inlunarweektodate('01/12/2013', '01/11/2013',
0)
두 날짜가 01/12/2012 전의 동일한 음력 주에 속해도 base_date 값이 timestamp 값보다 이후이므로 FALSE를 반환합니다.
inlunarweektodate('01/12/2006', '01/05/2006',
1)
TRUE을 반환합니다. period_no에 대해 1 값을 지정하면 base_date를 한 주 앞으로 시프트하므로 timestamp 값이 음력 주의 일부에 속하기 때문입니다.
달리 지정하지 않는 한 이 항목의 예에서는 다음 날짜 형식을 사용합니다. YYYY/MM/DD. 날짜 형식은 데이터 로드 스크립트의 SET DateFormat 문에 지정됩니다. 기본 날짜 형식은 지역 설정 및 기타 요인으로 인해 시스템에서 다를 수 있습니다. 아래 예의 형식을 요구 사항에 맞게 변경할 수 있습니다. 또는 이러한 예와 일치하도록 로드 스크립트의 형식을 변경할 수 있습니다.
앱의 기본 국가별 설정은 Qlik Sense가 설치된 컴퓨터 또는 서버의 국가별 시스템 설정을 기반으로 합니다. 액세스하는 Qlik Sense 서버가 스웨덴으로 설정된 경우 데이터 로드 편집기는 날짜, 시간 및 통화에 대해 스웨덴 지역 설정을 사용합니다. 이러한 국가별 형식 설정은 Qlik Sense 사용자 인터페이스에 표시되는 언어와 관련이 없습니다. Qlik Sense는 사용 중인 브라우저와 동일한 언어로 표시됩니다.
예 1 – 추가 인수 없음
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
Transactions라는 테이블에 로드되는 1월의 트랜잭션 집합이 포함된 데이터 집합. 기본 DateFormat 시스템 변수 MM/DD/YYYY가 사용됩니다.
1월 10일까지 음력 주에 발생한 트랜잭션을 확인하는 필드 in_lunar_week_to_date를 만듭니다.
in_lunar_week_to_date 필드는 inlunarweektodate() 함수를 사용하고 date 필드, 1월 10일의 하드 코딩된 날짜를 base_date로 전달하고 오프셋 0을 함수의 인수로 전달하여 선행 LOAD 문에서 만들어졌습니다.
음력 주는 1월 1일에 시작하므로 1월 10일은 1월 8일에 시작하는 음력 주에 속합니다. 그리고 inlunarweektodate() 함수를 사용하고 있으므로 해당 음력 주는 10일에 끝납니다. 따라서 1월의 두 날짜 사이에 발생한 모든 트랜잭션은 TRUE의 부울 값을 반환합니다. 이는 결과 테이블에서 검증됩니다.
예 2 – period_no
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
이 로드 스크립트에는 첫 번째 예와 동일한 데이터 집합 및 시나리오가 포함되어 있습니다. 그러나 이 예에서 작업은 음력 주 이후 2주 후부터 1월 1일까지 트랜잭션이 발생했는지 여부를 확인하는 필드 2_lunar_weeks_later를 만드는 것입니다.
이 경우 inlunarweektodate() 함수는 1월 10일까지의 음력 주가 3일(1월 8일, 9일, 10일)에 해당한다고 확인합니다. 오프셋 인수로 period_no가 2로 사용되었으므로 이 음력 주는 14일로 이동합니다. 따라서 이는 1월 22일, 23일, 24일이 포함되도록 음력 주 3일을 정의합니다. 1월 22일과 1월 24일 사이에 발생하는 모든 트랜잭션은 부울 결과 TRUE를 반환합니다.
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 이 필드를 차원으로 추가합니다. date.
다음 측정값을 만듭니다.
=inlunarweektodate(date,'01/10/2022', 0)
결과 테이블
date
=inlunarweektodate(date,'01/10/2022', 0)
1/1/2022
0
1/4/2022
0
1/10/2022
-1
1/11/2022
0
1/12/2022
0
1/15/2022
0
1/17/2022
0
1/18/2022
0
1/19/2022
0
1/21/2022
0
1/23/2022
0
1/26/2022
0
1/27/2022
0
1/29/2022
0
1/31/2022
0
in_lunar_week_to_date 측정값은 inlunarweektodate() 함수를 사용하고 날짜 필드, 1월 10일에 대한 하드 코딩된 날짜를 base_date로 전달하고 오프셋 0을 함수의 인수로 전달하여 차트 개체에서 만들어집니다.
음력 주는 1월 1일에 시작하므로 1월 10일은 1월 8일에 시작하는 음력 주에 속합니다. 또한 inlunarweektodate() 함수를 사용하고 있으므로 해당 음력 주는 10일에 끝납니다. 따라서 1월의 두 날짜 사이에 발생한 모든 트랜잭션은 TRUE의 부울 값을 반환합니다. 이는 결과 테이블에서 검증됩니다.
예 5 - 시나리오
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
Products라는 테이블에 로드되는 데이터 집합.
제품 ID, 제조 날짜, 원가로 구성된 정보.
장비 오류로 인해 1월 12일 음력 주에 제조된 제품에 결함이 있는 것으로 확인되었습니다. 문제는 1월 13일에 해결되었습니다. 최종 사용자는 제조된 제품이 '결함' 또는 '무결함'인 상태와 해당 주에 제조된 제품의 비용을 주별로 표시하는 차트 개체를 원합니다.
inlunarweektodate() 함수는 각 제품의 제조 날짜를 평가할 때 부울 값을 반환합니다. 부울 값 TRUE를 반환하는 경우 제품을 ‘Defective’로 표시합니다. FALSE 값을 반환하는 제품의 경우 1월 12일까지의 음력 주에 제조되지 않은 경우 제품을 ‘Faultless’로 표시합니다.
이 페이지가 도움이 되었습니까?
이 페이지 또는 해당 콘텐츠에서 오타, 누락된 단계 또는 기술적 오류와 같은 문제를 발견하면 개선 방법을 알려 주십시오!