# yearname 스크립트 및 차트 함수

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

`yearname()` 함수의 시간 범위 다이어그램.

`yearname()` 함수의 시간 범위 다이어그램.

`yearname()`yearname() 함수의 시간 범위 다이어그램. ![yearname 함수가 결과를 반환하는 시간 범위를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-diagram1.png)

`yearname()` 함수는 평가하려는 날짜를 오프셋할 수 있고 연도의 첫 번째 달을 설정할 수 있다는 점에서 `year()` 함수와 다릅니다.

연도의 첫 번째 달이 1월이 아닌 경우 이 함수는 날짜가 포함된 12개월 기간에 걸쳐 두 개의 4자리 연도를 반환합니다. 예를 들어, 연도의 시작이 4월이고 평가되는 날짜가 06/30/2020인 경우 반환되는 결과는 `2020-2021`입니다.

4월을 연도의 첫 번째 달로 설정한 `yearname()` 함수 다이어그램.

4월을 연도의 첫 번째 달로 설정한 `yearname()` 함수 다이어그램.

4월을 연도의 첫 번째 달로 설정한 `yearname()`yearname() 함수 다이어그램. ![yearname 함수가 12개월 기간 내의 날짜를 식별할 수 있고 해당 반환 값이 해당 연도의 첫 번째 달로 설정된 달에 따라 달라질 수 있음을 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-diagram2.png)

구문:

YearName(date[, period\_no[, first\_month\_of\_year]] )

반환 데이터 유형: 이중

| 인수 | 설명 |
| --- | --- |
| date | 평가할 날짜 또는 타임스탬프입니다. |
| period\_no | period\_no는 정수이며, 값 0은 date를 포함하는 연도를 나타냅니다. period\_no가 음수 값일 경우 이전 연도, 양수 값일 경우 다음 연도를 나타냅니다. |
| first\_month\_of\_year | 1월에 시작되지 않는 (회계)연도를 사용하려는 경우 first\_month\_of\_year에 2와 12 사이의 값을 지정하십시오. 그러면 표시 값이 두 연도를 보여주는 문자열이 됩니다. |

다음 값을 사용하여 `first_month_of_year` 인수에서 연도의 첫 번째 달을 설정할 수 있습니다.

first\_month\_of\_year 값

| 월 | 값 |
| --- | --- |
| 2월 | 2 |
| 3월 | 3 |
| 4월 | 4 |
| 5월 | 5 |
| 6월 | 6 |
| 7월 | 7 |
| 8월 | 8 |
| 9월 | 9 |
| 10월 | 10 |
| 11월 | 11 |
| 12월 | 12 |

yearname를 사용하는 경우

`yearname()` 함수는 연도별 집계를 비교하는 데 유용합니다. 예를 들어 연도별 제품의 총 판매액을 확인하려는 경우.

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

## 국가별 설정

달리 지정하지 않는 한 이 항목의 예에서는 다음 날짜 형식을 사용합니다: MM/DD/YYYY. 날짜 형식은 데이터 로드 스크립트의 `SET DateFormat` 문에 지정됩니다. 기본 날짜 형식은 지역 설정 및 기타 요인으로 인해 시스템에서 다를 수 있습니다. 아래 예의 형식을 요구 사항에 맞게 변경할 수 있습니다. 또는 이러한 예와 일치하도록 로드 스크립트의 형식을 변경할 수 있습니다. 자세한 내용은 [응용 프로그램 및 스크립트에 대한 지역 설정 수정](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm)를 참조하십시오.

응용 프로그램의 기본 지역 설정은 사용자 프로필을 기반으로 합니다. 이러한 국가별 형식 설정은 Qlik Cloud 사용자 인터페이스에 표시되는 언어와 관련이 없습니다. Qlik Cloud는 사용 중인 브라우저와 동일한 언어로 표시됩니다.

응용 프로그램 작성자인 경우 만든 응용 프로그램의 기본 지역을 설정할 수 있습니다. 자세한 내용은 [Qlik Cloud 분석에서 앱 및 스크립트 만들기를 위한 기본 지역 설정 지정](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting)을 참조하십시오.

함수 예

| 예제 | 결과 |
| --- | --- |
| `yearname('10/19/2001')` | '2001'를 반환합니다. |
| `yearname('10/19/2001',-1)` | '2000'을 반환합니다. |
| `yearname('10/19/2001',0,4)` | '2001-2002'를 반환합니다. |

관련 항목

| 항목 | 설명 |
| --- | --- |
| [year 스크립트 및 차트 함수](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/year.htm) | 이 함수는 포현식이 표준 숫자 해석에 따라 날짜로 해석될 경우 연도를 나타내는 정수를 반환합니다. |

## 예 1 – 추가 인수 없음

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

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

개요

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

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

* ‘`Transactions`’라는 테이블에 로드되는 2020년과 2022년 사이의 트랜잭션 집합이 포함된 데이터 집합.

* ‘`MM/DD/YYYY`'로 설정된 `DateFormat` 시스템 변수.

* `yearname()`을 사용하고 `year_name` 필드로 설정된 선행 LOAD.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
      *, 
      yearname(date) as year_name 
      ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98 
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
]; 
```

결과

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

* `date`
* `year_name`

결과 테이블

| 날짜 | 연도 이름 |
| --- | --- |
| 01/13/2020 | 2020 |
| 02/26/2020 | 2020 |
| 03/27/2020 | 2020 |
| 04/16/2020 | 2020 |
| 05/21/2020 | 2020 |
| 08/14/2020 | 2020 |
| 10/07/2020 | 2020 |
| 12/05/2020 | 2020 |
| 01/22/2021 | 2021 |
| 02/03/2021 | 2021 |
| 03/17/2021 | 2021 |
| 04/23/2021 | 2021 |
| 05/04/2021 | 2021 |
| 06/30/2021 | 2021 |
| 07/26/2021 | 2021 |
| 12/27/2021 | 2021 |
| 06/06/2022 | 2022 |
| 07/18/2022 | 2022 |
| 11/14/2022 | 2022 |
| 12/12/2022 | 2022 |

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

`yearname()` 함수는 날짜 값이 속하는 연도를 식별하고 이를 4자리 연도 값으로 반환합니다.

2021년을 연도 값으로 표시하는 `yearname()` 함수 다이어그램.

2021년을 연도 값으로 표시하는 `yearname()` 함수 다이어그램.

2021년을 연도 값으로 표시하는 `yearname()`yearname() 함수 다이어그램. ![yearname() 함수가 2021년 3월 17일 날짜에 대해 2021을 반환하는 것을 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example1-diagram.png)

## 예 2 – period\_no

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

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

개요

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

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

* 'Transactions'라는 테이블에 로드되는 2020년에서 2022년 사이의 트랜잭션 집합을 포함하는 데이터 집합.

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

* `yearname()`을 사용하고 `year_name` 필드로 설정된 선행 LOAD.

로드 스크립트

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

Transactions: 
    Load 
      *, 
      yearname(date,-1) as prior_year_name 
      ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98 
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
];  
```

결과

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

* `date`
* `prior_year_name`

결과 테이블

| 날짜 | 이전 연도 이름 |
| --- | --- |
| 01/13/2020 | 2019 |
| 02/26/2020 | 2019 |
| 03/27/2020 | 2019 |
| 04/16/2020 | 2019 |
| 05/21/2020 | 2019 |
| 08/14/2020 | 2019 |
| 10/07/2020 | 2019 |
| 12/05/2020 | 2019 |
| 01/22/2021 | 2020 |
| 02/03/2021 | 2020 |
| 03/17/2021 | 2020 |
| 04/23/2021 | 2020 |
| 05/04/2021 | 2020 |
| 06/30/2021 | 2020 |
| 07/26/2021 | 2020 |
| 12/27/2021 | 2020 |
| 06/06/2022 | 2021 |
| 07/18/2022 | 2021 |
| 11/14/2022 | 2021 |
| 12/12/2022 | 2021 |

`period_no` `-1`은 `yearname()` 함수에서 오프셋 인수로 사용되므로 함수는 먼저 트랜잭션이 발생한 연도를 식별합니다. 그런 다음 함수는 1년 전으로 이동하여 결과 연도를 반환합니다.

`period_no`가 `-1`로 설정된 `yearname()` 함수 다이어그램 .

`period_no`가 `-1`로 설정된 `yearname()` 함수 다이어그램 .

`period_no`period\_no가 `-1`-1로 설정된 `yearname()`yearname() 함수 다이어그램 . ![period_no가 음수 1이면 yearname() 함수가 식별하는 시간 범위가 변경되는 방법을 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example2-diagram.png)

## 예 3 – first\_month\_of\_year

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

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

개요

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

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

* 첫 번째 예와 동일한 데이터 집합.

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

* `yearname()`을 사용하고 `year_name` 필드로 설정된 선행 LOAD.

로드 스크립트

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

Transactions: 
    Load 
      *, 
      yearname(date,0,4) as year_name 
      ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
];
```

결과

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

* `id`
* `date`
* `year_name`

결과 테이블

| 날짜 | 연도 이름 |
| --- | --- |
| 01/13/2020 | 2019-2020 |
| 02/26/2020 | 2019-2020 |
| 03/27/2020 | 2019-2020 |
| 04/16/2020 | 2020-2021 |
| 05/21/2020 | 2020-2021 |
| 08/14/2020 | 2020-2021 |
| 10/07/2020 | 2020-2021 |
| 12/05/2020 | 2020-2021 |
| 01/22/2021 | 2020-2021 |
| 02/03/2021 | 2020-2021 |
| 03/17/2021 | 2020-2021 |
| 04/23/2021 | 2021-2022 |
| 05/04/2021 | 2021-2022 |
| 06/30/2021 | 2021-2022 |
| 07/26/2021 | 2021-2022 |
| 12/27/2021 | 2021-2022 |
| 06/06/2022 | 2022-2023 |
| 07/18/2022 | 2022-2023 |
| 11/14/2022 | 2022-2023 |
| 12/12/2022 | 2022-2023 |

`yearname()` 함수에서 `first_month_of_year` 인수 `4`를 사용하므로 연도의 시작은 1월 1일에서 4월 1일로 이동합니다. 따라서 각 12개월 기간은 2개의 캘린더 연도와 교차하고 `yearname()` 함수는 평가된 날짜에 대해 2개의 4자리 연도를 반환합니다.

트랜잭션 8198은 2021년 3월 17일에 발생합니다. `yearname()` 함수는 연도의 시작을 4월 1일로 설정하고 끝을 3월 30일로 설정합니다. 따라서 트랜잭션 8198은 2020년 4월 1일부터 2021년 3월 30일까지의 기간에 발생했습니다. 결과적으로 `yearname()` 함수는 2020-2021 값을 반환합니다.

3월을 연도의 첫 번째 달로 설정한 `yearname()` 함수 다이어그램.

3월을 연도의 첫 번째 달로 설정한 `yearname()` 함수 다이어그램.

3월을 연도의 첫 번째 달로 설정한 `yearname()`yearname() 함수 다이어그램. ![yearname() 함수가 연도의 첫 번째 달이 March/로 설정된 경우 식별하는 시간 범위를 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example3-diagram.png)

## 예 4 – 차트 개체 예

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

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

개요

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

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

* 첫 번째 예와 동일한 데이터 집합.

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

그러나 트랜잭션이 발생한 연도를 반환하는 필드는 차트 개체에서 측정값으로 만들어집니다.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98 
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
];	
```

결과

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

`date`

'`year_name`' 필드를 계산하려면 다음 측정값을 만듭니다.

`=yearname(date)`

결과 테이블

| 날짜 | =yearname(날짜) |
| --- | --- |
| 01/13/2020 | 2020 |
| 02/26/2020 | 2020 |
| 03/27/2020 | 2020 |
| 04/16/2020 | 2020 |
| 05/21/2020 | 2020 |
| 08/14/2020 | 2020 |
| 10/07/2020 | 2020 |
| 12/05/2020 | 2020 |
| 01/22/2021 | 2021 |
| 02/03/2021 | 2021 |
| 03/17/2021 | 2021 |
| 04/23/2021 | 2021 |
| 05/04/2021 | 2021 |
| 06/30/2021 | 2021 |
| 07/26/2021 | 2021 |
| 12/27/2021 | 2021 |
| 06/06/2022 | 2022 |
| 07/18/2022 | 2022 |
| 11/14/2022 | 2022 |
| 12/12/2022 | 2022 |

‘`year_name`’ 측정값은 `yearname()` 함수를 사용하고 날짜 필드를 함수의 인수로 전달하여 차트 개체에서 만들어집니다.

`yearname()` 함수는 날짜 값이 속하는 연도를 식별하고 이를 4자리 연도 값으로 반환합니다.

2021년을 연도 값으로 사용하는 `yearname()` 함수 다이어그램.

2021년을 연도 값으로 사용하는 `yearname()` 함수 다이어그램.

2021년을 연도 값으로 사용하는 `yearname()`yearname() 함수 다이어그램. ![yearname() 함수가 2021을 연도 값으로 반환하는 것을 보여 주는 다이어그램입니다.](https://help.qlik.com/ko-KR/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example4-diagram.png)

## 예 5 – 시나리오

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

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

개요

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

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

* 첫 번째 예와 동일한 데이터 집합.

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

최종 사용자는 트랜잭션에 대한 분기별 총 판매를 나타내는 차트를 원합니다. 데이터 모델에서 yearname() 차원을 사용할 수 없는 경우 yearname() 함수를 계산된 차원으로 사용하여 이 차트를 만듭니다.

로드 스크립트

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

Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98 
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
];
```

결과

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

연도별로 집계를 비교하려면 다음과 같이 계산된 차원을 만듭니다.

=yearname(date)

이 측정값을 만듭니다.

=sum(amount)

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

결과 테이블

| yearname(날짜) | =sum(amount) |
| --- | --- |
| 2020 | $463.55 |
| 2021 | $457.69 |
| 2022 | $294.35 |