# weekname 스크립트 및 차트 함수

이 함수는 date를 포함한 주의 첫 번째 날의 첫 번째 밀리초의 타임스탬프에 해당하는 기본 숫자 값으로 연도 및 주차를 보여주는 값을 반환합니다.

WeekName(date[, period\_no [, first\_week\_day [, broken\_weeks [, reference\_day]]]])

`weekname()` 함수는 날짜가 속하는 주를 결정하고 주 수와 해당 주의 연도를 반환합니다.주의 첫 번째 요일은 `FirstWeekDay` 시스템 변수에 의해 결정됩니다.그러나 `weekname()` 함수의 `first_week_day` 인수를 사용하여 주의 첫 번째 요일을 변경할 수도 있습니다.

Qlik Sense에서는 응용 프로그램이 만들어질 때 지역 설정을 가져오고, 해당 설정은 스크립트에 환경 변수로 저장됩니다.

북미 응용 프로그램 개발자는 스크립트에서 종종 분리된 주에 해당하는 `Set BrokenWeeks=1;`을(를) 가져옵니다.유럽 응용 프로그램 개발자는 스크립트에서 종종 분리되지 않은 주에 해당하는 `Set BrokenWeeks=0;`을 가져옵니다.

응용 프로그램이 분리된 주를 사용하는 경우 주차 계산은 발생한 일 수에 관계없이 1월 1일에 시작하여 `FirstWeekDay` 시스템 변수 전날에 끝납니다.

그러나 응용 프로그램이 분리되지 않은 주를 사용하는 경우 1주차는 전년도 또는 1월의 처음 며칠에 시작할 수 있습니다.이는 `ReferenceDay` 및 `FirstWeekDay` 시스템 변수를 사용하는 방법에 따라 다릅니다.

Weekname 함수의 예

| 날짜 | ISO 주 이름 | US 주 이름 |
| --- | --- | --- |
| Sat 2020 Dec 26 | 2020/52 | 2020/52 |
| Sun 2020 Dec 27 | 2020/52 | 2020/53 |
| Mon 2020 Dec 28 | 2020/53 | 2020/53 |
| Tue 2020 Dec 29 | 2020/53 | 2020/53 |
| Wed 2020 Dec 30 | 2020/53 | 2020/53 |
| Thu 2020 Dec 31 | 2020/53 | 2020/53 |
| Fri 2021 Jan 1 | 2020/53 | 2021/01 |
| Sat 2021 Jan 2 | 2020/53 | 2021/01 |
| Sun 2021 Jan 3 | 2020/53 | 2021/02 |
| Mon 2021 Jan 4 | 2021/01 | 2021/02 |
| Tue 2021 Jan 5 | 2021/01 | 2021/02 |

사용 시기

`weekname()` 함수는 주별로 집계를 비교하려는 경우에 유용합니다.

예를 들어 주별 제품의 총 판매액을 보려는 경우.응용 프로그램에서 `BrokenWeeks` 환경 변수와의 일관성을 유지하려면 `weekname()` 대신 `lunarweekname()`을 사용합니다.응용 프로그램이 분리되지 않은 주를 사용하는 경우 1주차는 전년도 12월의 날짜를 포함하거나 현재 연도의 1월 날짜를 제외할 수 있습니다.응용 프로그램에서 분리된 주를 사용하는 경우 1주차에는 7일 미만이 포함될 수 있습니다.

반환 데이터 유형: Dual

인수

| 인수 | 설명 |
| --- | --- |
| timestamp | 평가할 날짜 또는 타임스탬프입니다. |
| period\_no | shift는 정수이며, 값 0은 date를 포함하는 주를 나타냅니다. shift가 음수 값일 경우 이전 주, 양수 값일 경우 다음 주를 나타냅니다. |
| first\_week\_day | 주의 시작 요일을 지정합니다.생략하면 변수 FirstWeekDay의 값이 사용됩니다.<br><br>first\_week\_day에 가능한 값은 월요일에 0, 화요일에 1, 수요일에 2, 목요일에 3, 금요일에 4, 토요일에 5, 일요일에 6입니다.<br><br>시스템 변수에 대한 자세한 내용은 [FirstWeekDay](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm)를 참조하십시오. |
| broken\_weeks | broken\_weeks를 지정하지 않으면 BrokenWeeks 변수의 값이 주를 분리할지 여부를 정의하는 데 사용됩니다.<br><br>시스템 변수에 대한 자세한 내용은 [BrokenWeeks](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/BrokenWeeks.htm)를 참조하십시오. |
| reference\_day | reference\_day를 지정하지 않으면 ReferenceDay 변수의 값이 1주차를 정의하기 위한 기준일로 설정할 1월 날짜를 정의하는 데 사용됩니다.기본적으로 Qlik Sense 함수는 4를 기준일로 사용합니다.이는 1주차에 1월 4일이 포함되어야 한다는 의미입니다. 혹은 달리 말하면 1주차에 항상 1월이 4일 이상이 있어야 합니다.<br><br>시스템 변수에 대한 자세한 내용은 [ReferenceDay](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/ReferenceDay.htm)를 참조하십시오. |

## 국가별 설정

달리 지정하지 않는 한 이 항목의 예에서는 다음 날짜 형식을 사용합니다: MM/DD/YYYY.날짜 형식은 데이터 로드 스크립트의 `SET DateFormat` 문에 지정됩니다.기본 날짜 형식은 지역 설정 및 기타 요인으로 인해 시스템에서 다를 수 있습니다.아래 예의 형식을 요구 사항에 맞게 변경할 수 있습니다.또는 이러한 예와 일치하도록 로드 스크립트의 형식을 변경할 수 있습니다.

앱의 기본 국가별 설정은 Qlik Sense가 설치된 컴퓨터 또는 서버의 국가별 시스템 설정을 기반으로 합니다.액세스하는 Qlik Sense 서버가 스웨덴으로 설정된 경우, 데이터 로드 편집기는 날짜, 시간 및 통화에 대해 스웨덴 지역 설정을 사용합니다.이러한 국가별 형식 설정은 Qlik Sense 사용자 인터페이스에 표시되는 언어와 관련이 없습니다. Qlik Sense은(는) 사용 중인 브라우저와 동일한 언어로 표시됩니다.

아래의 예는 다음과 같이 가정합니다.

```
Set FirstWeekDay=0;  
Set BrokenWeeks=0;   
Set ReferenceDay=4;
```

함수 예

| 예제 | 결과 |
| --- | --- |
| weekname('01/12/2013') | 2013/02를 반환합니다. |
| weekname('01/12/2013', -1) | 2013/01을 반환합니다. |
| weekname('01/12/2013', 0, 1) | 2013/02를 반환합니다. |

## 예 1 – 추가 인수가 없는 날짜

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

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

개요

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

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

* 2021년 마지막 주와 2022년 첫 두 주 동안의 트랜잭션 집합이 포함된 데이터 집합이 '`Transactions`&gt;'라는 테이블에 로드됩니다.

* `DateFormat` 서식으로 설정된 `MM/DD/YYYY` 시스템 변수.

* `BrokenWeeks`으로 설정된 `1` 시스템 변수.

* `FirstWeekDay`으로 설정된 `6` 시스템 변수.

* 다음을 포함하는 선행 LOAD:

  * '`weekday()`' 필드로 설정된 `week_number` 함수. 트랜잭션이 발생한 연도와 주차를 반환합니다.

  * '`weekname()`'라는 필드로 설정된 `week_day` 함수. 각 트랜잭션 날짜의 요일 값을 표시합니다.

로드 스크립트

```

SET BrokenWeeks=1; 
SET DateFormat='MM/DD/YYYY'; 
SET FirstWeekDay=6; 

Transactions: 
   Load 
     *, 
     WeekDay(date) as week_day, 
     Weekname(date) as week_number 
     ; 
Load 
* 
Inline  
[ 
id,date,amount 
8183,12/27/2021,58.27 
8184,12/28/2021,67.42 
8185,12/29/2021,23.80 
8186,12/30/2021,82.06 
8187,12/31/2021,40.56 
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.56 
8195,01/08/2022,53.67 
8196,01/09/2022,26.63 
8197,01/10/2022,72.48 
8198,01/11/2022,18.37 
8199,01/12/2022,45.26 
8200,01/13/2022,58.23 
8201,01/14/2022,18.52 
]; 
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* `id`
* `date`
* `week_day`
* `week_number`

결과 테이블

| ID | 날짜 | week\_day | 주\_번호 |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | 월 | 2021/53 |
| 8184 | 12/28/2021 | 화 | 2021/53 |
| 8185 | 12/29/2021 | 수 | 2021/53 |
| 8186 | 12/30/2021 | 목 | 2021/53 |
| 8187 | 12/31/2021 | 금 | 2021/53 |
| 8188 | 01/01/2022 | 토 | 2022/01 |
| 8189 | 01/02/2022 | 일 | 2022/02 |
| 8190 | 01/03/2022 | 월 | 2022/02 |
| 8191 | 01/04/2022 | 화 | 2022/02 |
| 8192 | 01/05/2022 | 수 | 2022/02 |
| 8193 | 01/06/2022 | 목 | 2022/02 |
| 8194 | 01/07/2022 | 금 | 2022/02 |
| 8195 | 01/08/2022 | 토 | 2022/02 |
| 8196 | 01/09/2022 | 일 | 2022/03 |
| 8197 | 01/10/2022 | 월 | 2022/03 |
| 8198 | 01/11/2022 | 화 | 2022/03 |
| 8199 | 01/12/2022 | 수 | 2022/03 |
| 8200 | 01/13/2022 | 목 | 2022/03 |
| 8201 | 01/14/2022 | 금 | 2022/03 |

‘`week_number`’ 필드는 `weekname()` 함수를 사용하고 날짜 필드를 함수의 인수로 전달하여 선행 LOAD 문에서 만들어집니다.

`weekname()` 함수는 처음에 날짜 값이 속하는 주를 식별하고 트랜잭션이 발생하는 연도와 주 번호 개수를 반환합니다.

`FirstWeekDay` 시스템 변수는 일요일을 주의 첫 번째 요일로 설정합니다.`BrokenWeeks` 시스템 변수는 분리된 주를 사용하도록 응용 프로그램을 설정합니다. 즉, 1주차는 1월 1일에 시작됩니다.

기본 변수가 있는 `weekname()` 함수 다이어그램.

기본 변수가 있는 `weekname()` 함수 다이어그램.

기본 변수가 있는 `weekname()`weekname() 함수 다이어그램. ![Diagram that shows how the weekname() function identifies the week number and year in which a transaction takes place.](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekname-example1-diagram1.png)

1주차는 토요일인 1월 1일에 시작하므로 이 날짜에 발생한 트랜잭션은 값 `2022/01`(연도 및 주 수)을 반환합니다.

트랜잭션 8192의 주 수를 식별하는 `weekname()` 함수 다이어그램.

트랜잭션 8192의 주 수를 식별하는 `weekname()` 함수 다이어그램.

트랜잭션 8192의 주 수를 식별하는 `weekname()`weekname() 함수 다이어그램. ![Diagram that shows how the weekname() function identifies the week number in which a transaction 8192 took place.](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekname-example1-diagram2.png)

응용 프로그램이 분리된 주를 사용하고 첫 번째 요일이 일요일이기 때문에 1월 2일부터 1월 8일까지 발생한 트랜잭션은 값 `2022/02` (2022년의 두 번째 주)를 반환합니다.이것의 예시는 1월 5일에 발생했으며 '`week_number`' 필드에 대한 값 `2022/02`을 반환하는 트랜잭션 8192입니다.

## 예 2 – period\_no

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

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

개요

첫 번째 예와 동일한 데이터 집합 및 시나리오가 사용됩니다.

그러나 이 예에서 작업은 트랜잭션이 발생한 이전 연도 및 주 수를 반환하는 필드 '`previous_week_number`'를 만드는 것입니다.

데이터 로드 편집기를 열고 다음 로드 스크립트를 새 섹션에 추가합니다.

로드 스크립트

```
SET BrokenWeeks=1; 
SET FirstWeekDay=6; 
						
Transactions: 
   Load 
     *, 
     weekname(date,-1) as previous_week_number 
     ; 
Load 
* 
Inline  
[ 
id,date,amount 
8183,12/27/2021,58.27 
8184,12/28/2021,67.42 
8185,12/29/2021,23.80 
8186,12/30/2021,82.06 
8187,12/31/2021,40.56 
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.56 
8195,01/08/2022,53.67 
8196,01/09/2022,26.63 
8197,01/10/2022,72.48 
8198,01/11/2022,18.37 
8199,01/12/2022,45.26 
8200,01/13/2022,58.23 
8201,01/14/2022,18.52 
]; 
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* `id`
* `date`
* `week_day`
* `week_number`

결과 테이블

| ID | 날짜 | week\_day | 주\_번호 |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | 월 | 2021/52 |
| 8184 | 12/28/2021 | 화 | 2021/52 |
| 8185 | 12/29/2021 | 수 | 2021/52 |
| 8186 | 12/30/2021 | 목 | 2021/52 |
| 8187 | 12/31/2021 | 금 | 2021/52 |
| 8188 | 01/01/2022 | 토 | 2021/52 |
| 8189 | 01/02/2022 | 일 | 2021/53 |
| 8190 | 01/03/2022 | 월 | 2021/53 |
| 8191 | 01/04/2022 | 화 | 2021/53 |
| 8192 | 01/05/2022 | 수 | 2021/53 |
| 8193 | 01/06/2022 | 목 | 2021/53 |
| 8194 | 01/07/2022 | 금 | 2021/53 |
| 8195 | 01/08/2022 | 토 | 2022/01 |
| 8196 | 01/09/2022 | 일 | 2022/02 |
| 8197 | 01/10/2022 | 월 | 2022/02 |
| 8198 | 01/11/2022 | 화 | 2022/02 |
| 8199 | 01/12/2022 | 수 | 2022/02 |
| 8200 | 01/13/2022 | 목 | 2022/02 |
| 8201 | 01/14/2022 | 금 | 2022/02 |

`period_no` `-1`은 `weekname()` 함수에서 오프셋 인수로 사용되므로 함수는 먼저 트랜잭션이 발생하는 주를 식별합니다.그런 다음 1주일 전을 찾아 해당 주의 첫 번째 밀리초를 식별합니다.

`weekname()` 오프셋이 -1인 `period_no` 함수 다이어그램.

`weekname()` 오프셋이 -1인 `period_no` 함수 다이어그램.

`weekname()`weekname() 오프셋이 -1인 `period_no`period\_no 함수 다이어그램. ![Diagram that shows how the period_no offset of negative one makes the weekname() function retreive the week number of the previous week.](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekname-example2-diagram.png)

트랜잭션 8192는 2022년 1월 5일에 발생했습니다.`weekname()` 함수는 1주일 전인 2021년 12월 30일을 찾아 해당 날짜의 주 수와 연도를 반환합니다(`2021/53`).

## 예 3 – first\_week\_day

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

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

개요

첫 번째 예와 동일한 데이터 집합 및 시나리오가 사용됩니다.

그러나 이 예에서 회사 정책은 근무 주를 화요일에 시작하는 것입니다.

데이터 로드 편집기를 열고 다음 로드 스크립트를 새 섹션에 추가합니다.

로드 스크립트

```
SET BrokenWeeks=1; 
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
   Load 
     *, 
     weekday(date) as week_day, 
     weekname(date,0,1) as week_number 
     ; 
Load 
* 
Inline  
[ 
id,date,amount 
8183,12/27/2021,58.27 
8184,12/28/2021,67.42 
8185,12/29/2021,23.80 
8186,12/30/2021,82.06 
8187,12/31/2021,40.56 
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.56 
8195,01/08/2022,53.67 
8196,01/09/2022,26.63 
8197,01/10/2022,72.48 
8198,01/11/2022,18.37 
8199,01/12/2022,45.26 
8200,01/13/2022,58.23 
8201,01/14/2022,18.52 
]; 
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* `id`
* `date`
* `week_day`
* `week_number`

결과 테이블

| ID | 날짜 | week\_day | 주\_번호 |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | 월 | 2021/52 |
| 8184 | 12/28/2021 | 화 | 2021/53 |
| 8185 | 12/29/2021 | 수 | 2021/53 |
| 8186 | 12/30/2021 | 목 | 2021/53 |
| 8187 | 12/31/2021 | 금 | 2021/53 |
| 8188 | 01/01/2022 | 토 | 2022/01 |
| 8189 | 01/02/2022 | 일 | 2022/01 |
| 8190 | 01/03/2022 | 월 | 2022/01 |
| 8191 | 01/04/2022 | 화 | 2022/02 |
| 8192 | 01/05/2022 | 수 | 2022/02 |
| 8193 | 01/06/2022 | 목 | 2022/02 |
| 8194 | 01/07/2022 | 금 | 2022/02 |
| 8195 | 01/08/2022 | 토 | 2022/02 |
| 8196 | 01/09/2022 | 일 | 2022/02 |
| 8197 | 01/10/2022 | 월 | 2022/02 |
| 8198 | 01/11/2022 | 화 | 2022/03 |
| 8199 | 01/12/2022 | 수 | 2022/03 |
| 8200 | 01/13/2022 | 목 | 2022/03 |
| 8201 | 01/14/2022 | 금 | 2022/03 |

화요일을 주의 첫 번째 요일로 하는 `weekname()` 함수 다이어그램.

화요일을 주의 첫 번째 요일로 하는 `weekname()` 함수 다이어그램.

화요일을 주의 첫 번째 요일로 하는 `weekname()`weekname() 함수 다이어그램. ![Diagram that shows how the weekname() function works when Tuesday is set as the first day of week.](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekname-example3-diagram1.png)

`first_week_date` 함수에서 `1` 인수 `weekname()`을 사용하므로 화요일을 주의 첫 번째 요일로 사용합니다.따라서 이 함수는 2021년 53주가 12월 28일 화요일에 시작한다고 결정합니다. 그리고 분리된 주를 사용하는 응용 프로그램으로 인해 1주차는 2022년 1월 1일에 시작하여 2022년 1월 3일 월요일의 마지막 밀리초에 끝납니다.

화요일이 주의 첫 번째 요일인 트랜잭션 8192의 주 수를 보여 주는 다이어그램.

화요일이 주의 첫 번째 요일인 트랜잭션 8192의 주 수를 보여 주는 다이어그램.

화요일이 주의 첫 번째 요일인 트랜잭션 8192의 주 수를 보여 주는 다이어그램. ![Diagram that shows how setting Tuesday as the first day of the week makes the weekname() function return a different week number for transaction 8192.](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekname-example3-diagram2.png)

트랜잭션 8192는 2022년 1월 5일에 발생했습니다.따라서 화요일의 `first_week_day` 매개 변수를 사용하여 `weekname()` 함수는 '`2022/02`' 필드의 값 `week_number`를 반환합니다.

## 예 4 – 차트 개체 예

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

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

개요

첫 번째 예와 동일한 데이터 집합 및 시나리오가 사용됩니다.

그러나 이 예에서 데이터 집합은 변경되지 않고 응용 프로그램에 로드됩니다.트랜잭션이 발생한 연도의 주 수를 반환하는 계산은 응용 프로그램의 차트 개체에서 측정값으로 만들어집니다.

로드 스크립트

```
SET BrokenWeeks=1; 
Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8183,12/27/2021,58.27 
8184,12/28/2021,67.42 
8185,12/29/2021,23.80 
8186,12/30/2021,82.06 
8187,12/31/2021,40.56 
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.56 
8195,01/08/2022,53.67 
8196,01/09/2022,26.63 
8197,01/10/2022,72.48 
8198,01/11/2022,18.37 
8199,01/12/2022,45.26 
8200,01/13/2022,58.23 
8201,01/14/2022,18.52 
]; 
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* id

* date

* =week\_day (date)

트랜잭션이 발생한 주의 시작을 계산하려면 다음 측정값을 만듭니다.

=weekname(date)

결과 테이블

| ID | 날짜 | =weekday(date) | =weekname(date) |
| --- | --- | --- | --- |
| 8183 | 12/27/2021 | 월 | 2021/53 |
| 8184 | 12/28/2021 | 화 | 2021/53 |
| 8185 | 12/29/2021 | 수 | 2021/53 |
| 8186 | 12/30/2021 | 목 | 2021/53 |
| 8187 | 12/31/2021 | 금 | 2021/53 |
| 8188 | 01/01/2022 | 토 | 2022/01 |
| 8189 | 01/02/2022 | 일 | 2022/02 |
| 8190 | 01/03/2022 | 월 | 2022/02 |
| 8191 | 01/04/2022 | 화 | 2022/02 |
| 8192 | 01/05/2022 | 수 | 2022/02 |
| 8193 | 01/06/2022 | 목 | 2022/02 |
| 8194 | 01/07/2022 | 금 | 2022/02 |
| 8195 | 01/08/2022 | 토 | 2022/02 |
| 8196 | 01/09/2022 | 일 | 2022/03 |
| 8197 | 01/10/2022 | 월 | 2022/03 |
| 8198 | 01/11/2022 | 화 | 2022/03 |
| 8199 | 01/12/2022 | 수 | 2022/03 |
| 8200 | 01/13/2022 | 목 | 2022/03 |
| 8201 | 01/14/2022 | 금 | 2022/03 |

'week\_number' 필드는 weekname() 함수를 사용하고 함수의 인수로 날짜 필드를 전달하여 차트 개체에서 측정값으로 만들어집니다.

weekname() 함수는 처음에 날짜 값이 속하는 주를 식별하고 트랜잭션이 발생한 연도와 주 수 개수를 반환합니다.

FirstWeekDay 시스템 변수는 일요일을 주의 첫 번째 요일로 설정합니다.BrokenWeeks 시스템 변수는 응용 프로그램이 분리된 주를 사용하도록 설정합니다. 즉, 1주차는 1월 1일에 시작됩니다.

일요일이 주의 첫 번째 요일인 주 수를 보여 주는 다이어그램.

일요일이 주의 첫 번째 요일인 주 수를 보여 주는 다이어그램.

일요일이 주의 첫 번째 요일인 주 수를 보여 주는 다이어그램. ![Diagram that shows the week 1 begins on January 1 and Sunday as the first day of the week.](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekname-example4-diagram1.png)

트랜잭션 8192가 두 번째 주에 발생했음을 보여 주는 다이어그램.

트랜잭션 8192가 두 번째 주에 발생했음을 보여 주는 다이어그램.

트랜잭션 8192가 두 번째 주에 발생했음을 보여 주는 다이어그램. ![Diagram that shows transaction 8192 takes place in week 2.](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekname-example4-diagram1.png)

응용 프로그램이 분리된 주를 사용하고 첫 번째 요일이 일요일이기 때문에 1월 2일부터 1월 8일까지 발생한 트랜잭션은 값 2022/02(2022년의 두 번째 주)를 반환합니다.트랜잭션 8192는 1월 5일에 발생했으며 'week\_number' 필드에 대한 값 2022/02를 반환합니다.

## 예 5 – 시나리오

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

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

개요

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

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

* 'Transactions'라는 테이블에 로드되는 2019년의 마지막 주와 2020년의 처음 2주 동안의 트랜잭션 집합을 포함하는 데이터 집합.

* BrokenWeeks으로 설정된 0 시스템 변수.

* ReferenceDay으로 설정된 2 시스템 변수.

* DateFormat 서식으로 설정된 MM/DD/YYYY 시스템 변수.

로드 스크립트

```
SET BrokenWeeks=0;  
SET ReferenceDay=2;  
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8183,12/27/2019,58.27 
8184,12/28/2019,67.42 
8185,12/29/2019,23.80 
8186,12/30/2019,82.06 
8187,12/31/2019,40.56 
8188,01/01/2020,37.23 
8189,01/02/2020,17.17 
8190,01/03/2020,88.27 
8191,01/04/2020,57.42 
8192,01/05/2020,53.80 
8193,01/06/2020,82.06 
8194,01/07/2020,40.56 
8195,01/08/2020,53.67 
8196,01/09/2020,26.63 
8197,01/10/2020,72.48 
8198,01/11/2020,18.37 
8199,01/12/2020,45.26 
8200,01/13/2020,58.23 
8201,01/14/2020,18.52 
]; 
```

결과

데이터를 로드하고 시트를 엽니다.새 테이블을 만듭니다.

다음 표현식을 사용하여 계산된 차원을 만듭니다.

=weekname(date)

총 판매액을 계산하려면 다음 집계 측정값을 만듭니다.

=sum(amount)

측정값의 숫자 형식을 화폐로 설정합니다.

결과 테이블

| weekname(date) | =sum(amount) |
| --- | --- |
| 2019/52 | $125.69 |
| 2020/01 | $346.51 |
| 2020/02 | $347.57 |
| 2020/03 | $122.01 |

이 시나리오에서 weekname() 함수를 사용한 결과를 보여 주기 위해 다음 필드를 차원으로 추가합니다.

date

날짜 필드가 있는 결과 테이블

| weekname(date) | 날짜 | =sum(amount) |
| --- | --- | --- |
| 2019/52 | 12/27/2019 | $58.27 |
| 2019/52 | 12/28/2019 | $67.42 |
| 2020/01 | 12/29/2019 | $23.80 |
| 2020/01 | 12/30/2019 | $82.06 |
| 2020/01 | 12/31/2019 | $40.56 |
| 2020/01 | 01/01/2020 | $37.23 |
| 2020/01 | 01/02/2020 | $17.17 |
| 2020/01 | 01/03/2020 | $88.27 |
| 2020/01 | 01/04/2020 | $57.42 |
| 2020/02 | 01/05/2020 | $53.80 |
| 2020/02 | 01/06/2020 | $82.06 |
| 2020/02 | 01/07/2020 | $40.56 |
| 2020/02 | 01/08/2020 | $53.67 |
| 2020/02 | 01/09/2020 | $26.63 |
| 2020/02 | 01/10/2020 | $72.48 |
| 2020/02 | 01/11/2020 | $18.37 |
| 2020/03 | 01/12/2020 | $45.26 |
| 2020/03 | 01/13/2020 | $58.23 |
| 2020/03 | 01/14/2020 | $18.52 |

응용 프로그램은 분리되지 않은 주를 사용하고 ReferenceDay 시스템 변수로 인해 1주차에는 1월에 최소 2일이 필요하므로 2020년 1주차에는 2019년 12월 29일의 트랜잭션이 포함됩니다.