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

timestamp가 base\_date를 포함하는 연도에 속할 경우 이 함수는 True를 반환합니다.

구문:

InYear (timestamp, base\_date, period\_no [, first\_month\_of\_year])

반환 데이터 유형: 부울

Qlik Sense에서 부울 true 값은 -1로 표시되고 false 값은 0으로 표시됩니다.

`inyear()` 함수의 범위 다이어그램

`inyear()` 함수의 범위 다이어그램

`inyear()`inyear() 함수의 범위 다이어그램 ![inyear() 함수가 평가하고 기준 날짜의 배치에 따라 부울 결과를 반환하는 시간 범위를 보여주는 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyear-diagram1.png)

`inyear()` 함수는 선택한 날짜 값을 `base_date`에서 정의한 연도와 비교할 때 부울 결과를 반환합니다.

사용 시기

`inyear()` 함수는 부울 결과를 반환합니다. 일반적으로 이 유형의 함수는 `if expression`의 조건으로 사용됩니다. 이는 평가된 날짜가 해당 연도에 발생했는지 여부에 따라 집계 또는 계산을 반환합니다. 예를 들어, `inyear()` 함수는 정의된 연도에 발생한 모든 판매를 식별하는 데 사용할 수 있습니다.

인수

| 인수 | 설명 |
| --- | --- |
| timestamp | base\_date와 비교할 날짜입니다. |
| base\_date | 연도를 평가하는 데 사용되는 날짜입니다. |
| period\_no | 연도는 period\_no로 오프셋을 지정할 수 있습니다. period\_no는 정수이며, 값 0은 base\_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 |

## 국가별 설정

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

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

함수 예

| 예 | 결과 |
| --- | --- |
| `inyear ('01/25/2013', '01/01/2013', 0 )` | TRUE 반환 |
| `inyear ('01/25/2012', '01/01/2013', 0)` | FALSE 반환 |
| `inyear ('01/25/2013', '01/01/2013', -1)` | FALSE 반환 |
| `inyear ('01/25/2012', '01/01/2013', -1 )` | TRUE 반환 |
| `inyear ('01/25/2013', '01/01/2013', 0, 3)` | TRUE 반환<br><br>`base_date` 및 `first_month_of_year` 값은 타임스탬프가 01/03/2012와 02/28/2013 내에 있어야 함을 지정합니다. |
| `inyear ('03/25/2013', '07/01/2013', 0, 3 )` | TRUE 반환 |

## 예 1 - 기본 예

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

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

개요

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

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

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

* '`in_year`' 필드로 설정된 `inyear()` 함수를 포함하고 2021년 7월 26일과 같은 연도에 발생한 트랜잭션을 확인하는 선행 LOAD.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
Transactions: 
    Load 
        *, 
        inyear(date,'07/26/2021', 0) as in_year 
        ; 
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`
* `in_year`

결과 테이블

| 날짜 | in\_year |
| --- | --- |
| 01/13/2020 | 0 |
| 02/26/2020 | 0 |
| 03/27/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 08/14/2020 | 0 |
| 10/07/2020 | 0 |
| 12/05/2020 | 0 |
| 01/22/2021 | -1 |
| 02/03/2021 | -1 |
| 03/17/2021 | -1 |
| 04/23/2021 | -1 |
| 05/04/2021 | -1 |
| 06/30/2021 | -1 |
| 07/26/2021 | -1 |
| 12/27/2021 | -1 |
| 06/06/2022 | 0 |
| 07/18/2022 | 0 |
| 11/14/2022 | 0 |
| 12/12/2022 | 0 |

`in_year` 필드는 `inyear()` 함수를 사용하여 선행 LOAD 문에서 만들어집니다. 첫 번째 인수는 평가 중인 필드를 식별합니다. 두 번째 인수는 2021년 7월 26일에 대한 하드 코딩된 날짜이며, 비교 대상 연도를 확인하는 `base_date`입니다. `period_no` `0`은 마지막 인수이며, 이는 `inyear()` 함수가 연도 앞이나 뒤에 있는 연도를 비교하지 않음을 의미합니다.

7월 26일을 기준 날짜로 하는 `inyear()` 함수 범위의 다이어그램

7월 26일을 기준 날짜로 하는 `inyear()` 함수 범위의 다이어그램

7월 26일을 기준 날짜로 하는 `inyear()`inyear() 함수 범위의 다이어그램 ![7월 26일을 기준 날짜로 하고 2021년 1월 1일부터 2022년 1월 1일까지의 시간 범위가 강조 표시된 inyear() 함수의 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyear-examples1_and4-diagram.png)

2021년에 발생하는 모든 트랜잭션은 부울 결과 TRUE를 반환합니다.

## 예 2 – period\_no

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

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

개요

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

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

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

* '`previous_year`' 필드로 설정된 `inyear()` 함수를 포함하고 2021년 7월 26일을 포함하는 연도의 이전 연도에 발생한 트랜잭션을 확인하는 선행 LOAD.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
Transactions: 
    Load 
        *, 
        inyear(date,'07/26/2021', -1) as previous_year 
        ; 
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`
* `previous_year`

결과 테이블

| 날짜 | previous\_year |
| --- | --- |
| 01/13/2020 | -1 |
| 02/26/2020 | -1 |
| 03/27/2020 | -1 |
| 04/16/2020 | -1 |
| 05/21/2020 | -1 |
| 08/14/2020 | -1 |
| 10/07/2020 | -1 |
| 12/05/2020 | -1 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | 0 |
| 04/23/2021 | 0 |
| 05/04/2021 | 0 |
| 06/30/2021 | 0 |
| 07/26/2021 | 0 |
| 12/27/2021 | 0 |
| 06/06/2022 | 0 |
| 07/18/2022 | 0 |
| 11/14/2022 | 0 |
| 12/12/2022 | 0 |

`inyear()` 함수의 `period_no` 인수로 `-1`을 사용하면 비교 대상 연도의 경계가 1년 뒤로 시프트됩니다. 2021년이 초기에 비교 대상 연도로 식별됩니다. `period_no`는 비교 대상 연도를 1년 오프셋하여 2020년을 비교 대상 연도로 만듭니다.

period\_no 인수가 `-1`로 설정된 `inyear()` 함수 범위의 다이어그램

period\_no 인수가 `-1`로 설정된 `inyear()` 함수 범위의 다이어그램

period\_no 인수가 `-1`-1로 설정된 `inyear()`inyear() 함수 범위의 다이어그램 ![7월 26일이 기준 날짜이고 period_no 인수가 -1로 설정된 inyear() 함수의 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyear-example2-diagram.png)

따라서 2020년에 발생하는 모든 트랜잭션은 부울 결과 TRUE를 반환합니다.

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

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

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

개요

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

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

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

* '`in_year`' 필드로 설정된 `inyear()` 함수를 포함하고 2021년 7월 26일과 같은 연도에 발생한 트랜잭션을 확인하는 선행 LOAD.

그러나 이 예에서 조직 정책은 회계 연도의 첫 번째 달이 되는 3월입니다.

로드 스크립트

```
SET DateFormat='MM/DD/YYYY'; 
Transactions: 
    Load 
        *, 
        inyear(date,'07/26/2021', 0, 3) as in_year 
        ; 
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`
* `in_year`

결과 테이블

| 날짜 | in\_year |
| --- | --- |
| 01/13/2020 | 0 |
| 02/26/2020 | 0 |
| 03/27/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 08/14/2020 | 0 |
| 10/07/2020 | 0 |
| 12/05/2020 | 0 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | -1 |
| 04/23/2021 | -1 |
| 05/04/2021 | -1 |
| 06/30/2021 | -1 |
| 07/26/2021 | -1 |
| 12/27/2021 | -1 |
| 06/06/2022 | 0 |
| 07/18/2022 | 0 |
| 11/14/2022 | 0 |
| 12/12/2022 | 0 |

`inyear()` 함수의 `first_month_of_year` 인수로 `3`을 사용하면 연도가 3월 1일에 시작되고 2월 말에 끝납니다.

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

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

3월을 연도의 첫 번째 달로 설정한 `inyear()`inyear() 함수 범위의 다이어그램 ![7월 26일을 기준 날짜로 하고 연도의 첫 번째 달을 3월로 설정한 inyear() 함수의 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyear-example3-diagram.png)

따라서 2021년 3월 1일과 2022년 3월 1일 사이에 발생하는 모든 트랜잭션은 부울 결과 TRUE를 반환합니다.

## 예 4 - 차트 개체 예

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

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

개요

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

그러나 이 예에서 데이터 집합은 변경되지 않고 응용 프로그램에 로드됩니다. 트랜잭션이 2021년 7월 26일과 같은 연도에 발생했는지 여부를 확인하는 계산은 응용 프로그램의 차트 개체에서 측정값으로 만들어집니다.

로드 스크립트

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

트랜잭션이 2021년 7월 26일과 같은 연도에 발생했는지 여부를 계산하려면 다음 측정값을 만듭니다.

* `=inyear(date,'07/26/2021', 0)`

결과 테이블

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

'`in_year`' 필드는 `inyear()` 함수를 사용하여 차트에 만들어집니다. 첫 번째 인수는 평가 중인 필드를 식별합니다. 두 번째 인수는 2021년 7월 26일에 대한 하드 코딩된 날짜이며, 비교 대상 연도를 확인하는 `base_date`입니다. `period_no` `0`은 마지막 인수이며, 이는 `inyear()` 함수가 연도 앞이나 뒤에 있는 연도를 비교하지 않음을 의미합니다.

7월 27일을 기준 날짜로 하는 `inyear()` 함수 범위의 다이어그램

7월 27일을 기준 날짜로 하는 `inyear()` 함수 범위의 다이어그램

7월 27일을 기준 날짜로 하는 `inyear()`inyear() 함수 범위의 다이어그램 ![7월 27일을 기준 날짜로 하고 2021년 1월 1일부터 2022년 1월 1일까지의 시간 범위가 강조 표시된 inyear() 함수의 다이어그램입니다.](https://help.qlik.com/ko-KR/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyear-examples1_and4-diagram.png)

2021년에 발생하는 모든 트랜잭션은 부울 결과 TRUE를 반환합니다.

## 예 5 - 시나리오

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

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

개요

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

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

* 'Products'라는 테이블에 로드되는 데이터 집합.

* 테이블에는 다음 필드가 포함됩니다.

  * 제품 ID

  * 제품 유형

  * 제조 날짜

  * 가격

최종 사용자는 2021년에 제조된 제품의 비용을 제품 유형별로 표시하는 차트 개체를 원합니다.

로드 스크립트

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

결과

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

* product\_type

2021년에 제조된 각 제품의 합계를 계산하려면 다음 측정값을 만듭니다.

* =sum(if(InYear(manufacture\_date,makedate(2021,01,01),0),cost\_price,0))

다음과 같이 하십시오.

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

2. 모양에서 합계를 끕니다.

결과 테이블

| product\_type | =sum(if(InYear(manufacture\_date,makedate(2021,01,01),0),cost\_price,0)) |
| --- | --- |
| 제품 A | $95.93 |
| 제품 B | $128.66 |
| 제품 C | $61.89 |
| 제품 D | $171.21 |

inyear() 함수는 각 제품의 제조 날짜를 평가할 때 부울 값을 반환합니다. 2021년에 제조된 모든 제품의 경우 inyear() 함수는 부울 값 TRUE를 반환하고 cost\_price의 합계를 표시합니다.