# weekday - 스크립트 및 차트 함수

이 함수는 다음을 포함하는 이중 값을 반환합니다.

* 환경 변수 DayNames로 정의한 날짜 이름.
* 주의 명목상 이름(0~6)에 해당하는 0~6 사이의 정수.

구문:

weekday(date [,first\_week\_day=0])

반환 데이터 유형: dual

`weekday()` 함수는 날짜가 발생하는 요일을 결정합니다. 그런 다음 해당 날짜를 나타내는 문자열 값을 반환합니다.

날짜가 속하는 날짜의 이름을 반환하는 `weekday()` 함수의 다이어그램

날짜가 속하는 날짜의 이름을 반환하는 `weekday()` 함수의 다이어그램

날짜가 속하는 날짜의 이름을 반환하는 `weekday()`weekday() 함수의 다이어그램 ![날짜가 속하는 요일의 이름을 반환하는 weekday() 함수를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-diagram1.png)

결과는 주의 시작일을 기준으로 해당 요일에 해당하는 숫자 값(0-6)을 반환합니다. 예를 들어, 주의 첫 번째 요일이 일요일로 설정된 경우 수요일은 숫자 값 `3`을 반환합니다. 이 시작일은 `FirstWeekDay` 시스템 변수나 `first_week_day` 함수 매개 변수에 의해 결정됩니다.

이 숫자 값을 산술 표현식의 일부로 사용할 수 있습니다. 예를 들어, `1`로 곱하면 값 자체가 반환됩니다.

요일 이름 대신 요일의 숫자 값이 표시되는 `weekday()` 함수의 다이어그램

요일 이름 대신 요일의 숫자 값이 표시되는 `weekday()` 함수의 다이어그램

요일 이름 대신 요일의 숫자 값이 표시되는 `weekday()`weekday() 함수의 다이어그램 ![식별된 요일에 해당하는 숫자 값을 반환할 수 있는 weekday() 함수를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-diagram2.png)

사용 시기

`weekday()` 함수는 요일별로 집계를 비교하려는 경우에 유용합니다. 예를 들어 요일별 평균 제품 판매를 비교하려는 경우에 사용할 수 있습니다.

이러한 차원은 로드 스크립트에서 마스터 캘린더 테이블에 필드를 만드는 함수를 사용하여 만들 수 있습니다. 또는 차트에서 계산된 측정값으로 직접 만들어집니다.

관련 항목

| 항목 | 상호 작용 |
| --- | --- |
| [FirstWeekDay](https://help.qlik.com/ko-KR/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm) | 각 주의 시작 날짜를 정의합니다. |

| <ul> </ul> |
| --- |

인수

| 인수 | 설명 |
| --- | --- |
| date | 평가할 날짜 또는 타임스탬프입니다. |
| first\_week\_day | 주의 시작 요일을 지정합니다. 생략하면 변수 FirstWeekDay의 값이 사용됩니다.<br><br>[FirstWeekDay](https://help.qlik.com/ko-KR/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm) |

다음 값을 사용하여 `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를 반환합니다.<br><br>이 예에서는 일요일(`6`)이 주의 시작 날짜입니다. |
| `SET FirstWeekDay=6;`<br><br>`...`<br><br>`weekday('10/12/1971')` | 'Tue' 및 2를 반환합니다. |

## 예 1 - 요일 문자열

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/weekday.htm)

#### 로드 스크립트 및 결과

개요

데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* '`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의 요일로 반환하는 `weekday()` 함수의 다이어그램

수요일을 트랜잭션 8192의 요일로 반환하는 `weekday()` 함수의 다이어그램

수요일을 트랜잭션 8192의 요일로 반환하는 `weekday()`weekday() 함수의 다이어그램 ![weekday() 함수가 수요일을 트랜잭션 8192의 요일로 반환하는 것을 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-examples1_and3-diagram.png)

트랜잭션 8192는 1월 5일에 발생했습니다. `FirstWeekDay` 시스템 변수는 주의 첫 번째 요일을 일요일로 설정합니다. `weekday()` 함수 트랜잭션은 수요일에 발생했으며 이 값을 `DayNames` 시스템 변수의 축약 형식으로 `week_day` 필드에 반환합니다.

필드(수요일, 3)에 대한 이중 숫자 및 텍스트 결과가 있기 때문에 '`week_day`' 필드의 값은 열에서 오른쪽 정렬됩니다. 필드 값을 해당하는 숫자로 변환하기 위해 필드를 `num()` 함수 내에서 래핑할 수 있습니다. 예를 들어 트랜잭션 8192에서 수요일 값은 숫자 3으로 변환됩니다.

## 예 2 – first\_week\_day

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/weekday.htm)

#### 로드 스크립트 및 결과

개요

데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* '`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 |

수요일에 이중 숫자 값 1이 있는 것을 보여 주는 `weekday()` 함수의 다이어그램

수요일에 이중 숫자 값 1이 있는 것을 보여 주는 `weekday()` 함수의 다이어그램

수요일에 이중 숫자 값 1이 있는 것을 보여 주는 `weekday()`weekday() 함수의 다이어그램 ![2022년 1월 5일이 수요일이고 해당 주의 첫 번째 요일이 화요일로 설정되어 있으므로 해당 수요일의 숫자 값이 1임을 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-example2-diagram.png)

`first_week_day` 인수가 `weekday()` 함수에서 `1`로 설정되어 있으므로 주의 첫 번째 요일은 화요일입니다. 따라서 화요일에 발생하는 모든 트랜잭션에는 이중 숫자 값 `0`이 있습니다.

트랜잭션 8192는 1월 5일에 발생했습니다. `weekday()` 함수는 이것이 수요일임을 식별하므로 표현식은 이중 숫자 값 `1`을 반환합니다.

## 예 3 - 차트 개체 예

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/weekday.htm)

#### 로드 스크립트 및 차트 표현식

개요

데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* '`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의 요일로 반환하는 `weekday()` 함수의 다이어그램

수요일을 트랜잭션 8192의 요일로 반환하는 `weekday()` 함수의 다이어그램

수요일을 트랜잭션 8192의 요일로 반환하는 `weekday()`weekday() 함수의 다이어그램 ![weekday() 함수가 수요일을 트랜잭션 8192의 요일로 반환하는 것을 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekday-examples1_and3-diagram.png)

트랜잭션 8192는 1월 5일에 발생했습니다. `FirstWeekDay` 시스템 변수는 주의 첫 번째 요일을 일요일로 설정합니다. `weekday()` 함수 트랜잭션은 수요일에 발생했으며 이 값을 `DayNames` 시스템 변수의 축약 형식으로 `=weekday(date)` 필드에 반환합니다.

## 예 4 - 시나리오

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/weekday.htm)

#### 로드 스크립트 및 결과

개요

데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* '`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 |