weekday() 함수는 날짜가 발생하는 요일을 결정합니다. 그런 다음 해당 날짜를 나타내는 문자열 값을 반환합니다.
결과는 주의 시작일을 기준으로 해당 요일에 해당하는 숫자 값(0-6)을 반환합니다. 예를 들어, 주의 첫 번째 요일이 일요일로 설정된 경우 수요일은 숫자 값 3을 반환합니다. 이 시작일은 FirstWeekDay 시스템 변수나 first_week_day 함수 매개 변수에 의해 결정됩니다.
이 숫자 값을 산술 표현식의 일부로 사용할 수 있습니다. 예를 들어, 1로 곱하면 값 자체가 반환됩니다.
사용 시기
weekday() 함수는 요일별로 집계를 비교하려는 경우에 유용합니다. 예를 들어 요일별 평균 제품 판매를 비교하려는 경우에 사용할 수 있습니다.
이러한 차원은 로드 스크립트에서 마스터 캘린더 테이블에 필드를 만드는 함수를 사용하여 만들 수 있습니다. 또는 차트에서 계산된 측정값으로 직접 만들어집니다.
다음 값을 사용하여 first_week_day 인수에서 주가 시작되는 날짜를 설정할 수 있습니다.
first_week_day 값
일
Value
월요일
0
화요일
1
수요일
2
목요일
3
금요일
4
토요일
5
일요일
6
국가별 설정
달리 지정하지 않는 한 이 항목의 예에서는 다음 날짜 형식을 사용합니다. YYYY/MM/DD. 날짜 형식은 데이터 로드 스크립트의 SET DateFormat 문에 지정됩니다. 기본 날짜 형식은 지역 설정 및 기타 요인으로 인해 시스템에서 다를 수 있습니다. 아래 예의 형식을 요구 사항에 맞게 변경할 수 있습니다. 또는 이러한 예와 일치하도록 로드 스크립트의 형식을 변경할 수 있습니다.
앱의 기본 국가별 설정은 Qlik Sense가 설치된 컴퓨터 또는 서버의 국가별 시스템 설정을 기반으로 합니다. 액세스하는 Qlik Sense 서버가 스웨덴으로 설정된 경우 데이터 로드 편집기는 날짜, 시간 및 통화에 대해 스웨덴 지역 설정을 사용합니다. 이러한 국가별 형식 설정은 Qlik Sense 사용자 인터페이스에 표시되는 언어와 관련이 없습니다. Qlik Sense는 사용 중인 브라우저와 동일한 언어로 표시됩니다.
정보 메모언급하지 않는 한, 이 예에서 FirstWeekDay는 0으로 설정됩니다.
함수 예
예
결과
weekday('10/12/1971')
'Tue' 및 1을 반환합니다.
weekday('10/12/1971' , 6)
'Tue' 및 2를 반환합니다.
이 예에서는 일요일(6)이 주의 시작 날짜입니다.
SET FirstWeekDay=6;
...
weekday('10/12/1971')
'Tue' 및 2를 반환합니다.
예 1 - 요일 문자열
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
'Transactions'라는 테이블에 로드되는 2022년 트랜잭션 집합이 포함된 데이터 집합.
6(일요일)으로 설정된 FirstWeekDay 시스템 변수.
기본 요일 이름을 사용하도록 설정된 DayNames 변수.
'week_day' 필드로 설정되고 트랜잭션이 발생한 요일을 반환하는 weekday() 함수가 포함된 선행 LOAD.
로드 스크립트
SET DateFormat='MM/DD/YYYY';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET FirstWeekDay=6;
Transactions:
Load
*,
WeekDay(date) as week_day
;
Load
*
Inline
[
id,date,amount
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.39
];
결과
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.
id
date
week_day
결과 테이블
id
date
week_day
8188
01/01/2022
Sat
8189
01/02/2022
Sun
8190
01/03/2022
Mon
8191
01/04/2022
Tue
8192
01/05/2022
Wed
8193
01/06/2022
Thu
8194
01/07/2022
Fri
’week_day’ 필드는 weekday() 함수를 사용하고 날짜 필드를 함수의 인수로 전달하여 선행 LOAD 문에서 만들어집니다.
weekday() 함수는 요일 문자열 값을 반환합니다. 즉, DayNames 시스템 변수에 의해 설정된 요일의 이름을 반환합니다.
트랜잭션 8192는 1월 5일에 발생했습니다. FirstWeekDay 시스템 변수는 주의 첫 번째 요일을 일요일로 설정합니다. weekday() 함수 트랜잭션은 수요일에 발생했으며 이 값을 DayNames 시스템 변수의 축약 형식으로 week_day 필드에 반환합니다.
필드(수요일, 3)에 대한 이중 숫자 및 텍스트 결과가 있기 때문에 'week_day' 필드의 값은 열에서 오른쪽 정렬됩니다. 필드 값을 해당하는 숫자로 변환하기 위해 필드를 num() 함수 내에서 래핑할 수 있습니다. 예를 들어 트랜잭션 8192에서 수요일 값은 숫자 3으로 변환됩니다.
예 2 – first_week_day
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
'Transactions'라는 테이블에 로드되는 2022년 트랜잭션 집합이 포함된 데이터 집합.
6(일요일)으로 설정된 FirstWeekDay 시스템 변수.
기본 요일 이름을 사용하도록 설정된 DayNames 변수.
'week_day' 필드로 설정되고 트랜잭션이 발생한 요일을 반환하는 weekday() 함수가 포함된 선행 LOAD.
로드 스크립트
SET DateFormat='MM/DD/YYYY';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET FirstWeekDay=6;
Transactions:
Load
*,
WeekDay(date,1) as week_day
;
Load
*
Inline
[
id,date,amount
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.39
];
결과
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.
id
date
week_day
결과 테이블
id
date
week_day
8188
01/01/2022
Sat
8189
01/02/2022
Sun
8190
01/03/2022
Mon
8191
01/04/2022
Tue
8192
01/05/2022
Wed
8193
01/06/2022
Thu
8194
01/07/2022
Fri
first_week_day 인수가 weekday() 함수에서 1로 설정되어 있으므로 주의 첫 번째 요일은 화요일입니다. 따라서 화요일에 발생하는 모든 트랜잭션에는 이중 숫자 값 0이 있습니다.
트랜잭션 8192는 1월 5일에 발생했습니다. weekday() 함수는 이것이 수요일임을 식별하므로 표현식은 이중 숫자 값 1을 반환합니다.
예 3 - 차트 개체 예
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
'Transactions'라는 테이블에 로드되는 2022년 트랜잭션 집합이 포함된 데이터 집합.
6(일요일)으로 설정된 FirstWeekDay 시스템 변수.
기본 요일 이름을 사용하도록 설정된 DayNames 변수.
그러나 이 예에서 데이터 집합은 변경되지 않고 응용 프로그램에 로드됩니다. 요일 값을 식별하는 계산은 앱의 차트에서 측정값으로 만들어집니다.
로드 스크립트
SET DateFormat='MM/DD/YYYY';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET FirstWeekDay=6;
Transactions:
Load
*
Inline
[
id,date,amount
8188,01/01/2022,37.23
8189,01/02/2022,17.17
8190,01/03/2022,88.27
8191,01/04/2022,57.42
8192,01/05/2022,53.80
8193,01/06/2022,82.06
8194,01/07/2022,40.39
];
결과
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.
id
date
요일 값을 계산하려면 다음 측정값을 만듭니다.
=weekday(date)
결과 테이블
id
date
=weekday(date)
8188
01/01/2022
Sat
8189
01/02/2022
Sun
8190
01/03/2022
Mon
8191
01/04/2022
Tue
8192
01/05/2022
Wed
8193
01/06/2022
Thu
8194
01/07/2022
Fri
'=weekday(date)' 필드는 weekday() 함수를 사용하고 함수의 인수로 날짜 필드를 전달하여 차트에서 만들어집니다.
weekday() 함수는 요일 문자열 값을 반환합니다. 즉, DayNames 시스템 변수에 의해 설정된 요일의 이름을 반환합니다.
트랜잭션 8192는 1월 5일에 발생했습니다. FirstWeekDay 시스템 변수는 주의 첫 번째 요일을 일요일로 설정합니다. weekday() 함수 트랜잭션은 수요일에 발생했으며 이 값을 DayNames 시스템 변수의 축약 형식으로 =weekday(date) 필드에 반환합니다.
예 4 - 시나리오
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
'Transactions'라는 테이블에 로드되는 2022년 트랜잭션 집합이 포함된 데이터 집합.
6(일요일)으로 설정된 FirstWeekDay 시스템 변수.
기본 요일 이름을 사용하도록 설정된 DayNames 변수.
최종 사용자는 트랜잭션에 대한 요일별 평균 판매를 나타내는 차트를 원합니다.
로드 스크립트
SET DateFormat='MM/DD/YYYY';
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET FirstWeekDay=6;
Transactions:
LOAD
RecNo() AS id,
MakeDate(2022, 1, Ceil(Rand() * 31)) as date,
Rand() * 1000 AS amount
Autogenerate(1000);
결과
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.
=weekday(date)
=avg(amount)
측정값의 숫자 형식을 화폐로 설정합니다.
결과 테이블
weekday(date)
Avg(amount)
Sun
$536.96
Mon
$500.80
Tue
$515.63
Wed
$509.21
Thu
$482.70
Fri
$441.33
Sat
$505.22
이 페이지가 도움이 되었습니까?
이 페이지 또는 해당 콘텐츠에서 오타, 누락된 단계 또는 기술적 오류와 같은 문제를 발견하면 개선 방법을 알려 주십시오!