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

if 함수는 함수에 제공된 조건이 True로 평가되는지, False로 평가되는지에 따른 값을 반환합니다.

[If Function](https://play.vidyard.com/qnkaRddq32LnAGUTTDGdLA)

구문:

if(condition , then [, else])

이 항목의 일부 예에서는 인라인 로드를 사용합니다. [인라인 로드를 사용하여 데이터 로드](https://help.qlik.com/ko-KR/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm)

인수

| 인수 | 설명 |
| --- | --- |
| condition | 논리적으로 해석되는 표현식입니다. |
| then | 어떤 유형이든 될 수 있는 표현식입니다. condition이 True인 경우 if 함수는 then 표현식의 값을 반환합니다. |
| else | 어떤 유형이든 될 수 있는 표현식입니다. condition이 False인 경우 if 함수는 else 표현식의 값을 반환합니다.<br><br>이 매개 변수는 선택 사항입니다. condition이 False인 경우, else를 지정하지 않으면 NULL이 반환됩니다. |

예

| 예 | 결과 |
| --- | --- |
| `if( Amount>=<br>						0, 'OK', 'Alarm' )` | 이 표현식은 Amount가 양수(0 이상)인지 테스트하여 양수인 경우 'OK'를 반환합니다. Amount가 0 미만이면 'Alarm'이 반환됩니다. |

## 예 - if를 사용한 로드 스크립트

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

#### 예: 로드 스크립트

로드 스크립트

If는 변수를 포함하여 다른 메서드 및 개체와 함께 로드 스크립트에서 사용할 수 있습니다. 예를 들어 변수 threshold를 설정하고 해당 임계값에 기반한 데이터 모델에서 필드를 포함시키려면 다음을 수행하면 됩니다.

데이터 로드 편집기에서 새 탭을 만든 후 다음 데이터를 인라인 로드로 로드합니다. 결과를 보려면 Qlik Sense에서 아래 테이블을 만듭니다.

```
Transactions:
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, customer_id, size, color_code
3750, 20180830, 23.56, 2, 2038593, L, Red
3751, 20180907, 556.31, 6, 203521, m, orange
3752, 20180916, 5.75, 1, 5646471, S, blue
3753, 20180922, 125.00, 7, 3036491, l, Black
3754, 20180922, 484.21, 13, 049681, xs, Red
3756, 20180922, 59.18, 2, 2038593, M, Blue
3757, 20180923, 177.42, 21, 203521, XL, Black
];
 
set threshold = 100;
					
/* Create new table called Transaction_Buckets 
Compare transaction_amount field from Transaction table to threshold of 100.
Output results into a new field called Compared to Threshold							
 */					
 
Transaction_Buckets:
Load
   transaction_id,
   If(transaction_amount > $(threshold),'Greater than $(threshold)','Less than $(threshold)') as [Compared to Threshold]
Resident Transactions;
```

결과

로드 스크립트에서 ifif 함수를 사용하여 나온 출력을 보여 주는 Qlik SenseQlik Sense 테이블입니다.

| transaction\_id | 임계값과 비교 |
| --- | --- |
| 3750 | 100보다 작음 |
| 3751 | 100보다 큼 |
| 3752 | 100보다 작음 |
| 3753 | 100보다 큼 |
| 3754 | 100보다 큼 |
| 3756 | 100보다 작음 |
| 3757 | 100보다 큼 |

## 예 - if를 사용한 차트 표현식

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

#### 예: 차트 표현식

차트 표현식 1

로드 스크립트

데이터 로드 편집기에서 새 탭을 만든 후 다음 데이터를 인라인 로드로 로드합니다. 데이터를 로드한 후 아래의 차트 표현식 예를 Qlik Sense 테이블에 만듭니다.

```
MyTable:
LOAD * inline [Date, Location, Incidents
1/3/2016, Beijing, 0
1/3/2016, Boston, 12
1/3/2016, Stockholm, 3
1/3/2016, Toronto, 0
1/4/2016, Beijing, 0
1/4/2016, Boston, 8];
```

차트 표현식에서 ifif 함수의 예를 보여 주는 Qlik SenseQlik Sense 테이블입니다.

| 날짜 | 위치 | 인시던트 | if(Incidents&gt;=10, 'Critical', 'Ok' ) | if(Incidents&gt;=10, 'Critical', If( Incidents&gt;=1 and Incidents&lt;10, 'Warning', 'Ok')) |
| --- | --- | --- | --- | --- |
| 1/3/2016 | 베이징 | 0 | 확인 | 확인 |
| 1/3/2016 | 보스턴 | 12 | 중요 | 중요 |
| 1/3/2016 | 스톡홀름 | 3 | 확인 | 경고 |
| 1/3/2016 | 토론토 | 0 | 확인 | 확인 |
| 1/4/2016 | 베이징 | 0 | 확인 | 확인 |
| 1/4/2016 | 보스턴 | 8 | 확인 | 경고 |

차트 표현식 2

새 앱에서 데이터 로드 편집기의 새 탭에 다음 스크립트를 추가한 후 데이터를 로드합니다. 그런 다음 아래 차트 표현식으로 테이블을 만들 수 있습니다.

```
SET FirstWeekDay=0;
Load 
Date(MakeDate(2022)+RecNo()-1) as Date
Autogenerate 14;
```

차트 표현식에서 ifif 함수의 예를 보여 주는 Qlik SenseQlik Sense 테이블입니다.

| 날짜 | WeekDay(Date) | If(WeekDay(Date)&gt;=5,'WeekEnd','Normal Day') |
| --- | --- | --- |
| 1/1/2022 | 토 | WeekEnd |
| 1/2/2022 | 일 | WeekEnd |
| 1/3/2022 | 월 | 평일 |
| 1/4/2022 | 화 | 평일 |
| 1/5/2022 | 수 | 평일 |
| 1/6/2022 | 목 | 평일 |
| 1/7/2022 | 금 | 평일 |
| 1/8/2022 | 토 | 주말 |
| 1/9/2022 | 일 | 주말 |
| 1/10/2022 | 월 | 평일 |
| 1/11/2022 | 화 | 평일 |
| 1/12/2022 | 수 | 평일 |
| 1/13/2022 | 목 | 평일 |
| 1/14/2022 | 금 | 평일 |