본문 바로가기

Qlik Sense 개발가이드

Qlik Sense (클릭센스) - Coalesce 및 EmptyIsNull 함수

2020 9 월 버전에 추가된 기능입니다.  

EmptyIsNull - 스크립트 및 차트 함수

https://help.qlik.com/ko-KR/sense/February2021/Subsystems/Hub/Content/Sense_Hub/Scripting/NULLFunctions/EmptyIsNull.htm

 

EmptyIsNull 함수는 빈 문자열을 NULL로 변환합니다. 그러므로 매개변수가 빈 문자열이면 NULL을 반환하고 그렇지 않으면 매개변수를 반환합니다.

사용예:

EmptyIsNull(AdditionalComments) 표현식은 문자열 대신 AdditionalComments 필드의 문자열 값을 null 반환합니다. 비어 있지 않은 문자열과 숫자가 반환됩니다.
EmptyIsNull(PurgeChar(PhoneNumber, ' -()')) 표현식은 PhoneNumber 필드에서 대시, 공백 괄호를 제거합니다. 남은 문자가 없으면 EmptyIsNull 함수는 문자열을 null 반환합니다. 전화 번호는 전화 번호가 없는 것과 같습니다.

 

다음과 같이 데이터를 로드합니다.

 

 

위에서 값이 없는 경우 로드된 값은 비어 있습니다.

데이터 미리 보기에서 확인 합니다.

 

데이터 미리 보기에서 확인 합니다.

 

데이터를 EmptyIsNull 함수로 변환시킵니다.

필드는 Null 값으로 치환되어 있습니다. 필드에 대시(-) 표현된 것이 Null 값을 의미합니다

EmptyIsNull  함수의 결과는 If (Len(예명) = 0, Null(), 예명) As 예명 과 동일한 결과입니다.

이전의 스크립팅은 다음과 같이 작성하였습니다.

 

 

coalesce - 스크립트 및 차트 함수

https://help.qlik.com/ko-KR/sense/February2021/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/coalesce.htm

coalesce 함수는 유효한 NULL이 아닌 표현을 가진 첫 번째 매개 변수를 리턴합니다. 여러 매개 변수를 사용할 수 있습니다. Coalesce는 번역하면 합체 입니다. 즉 매개변수를 합하는 함수 입니다.

Syntax:  

coalesce(expr1[ , expr2 , expr3 , ...])

 

사용예: 기본 데이터

 

결과 확인

 

Coalesce(예명,본명,영문명, '<Not Define>') As 대표명 문장을 예전의 스크립팅에서는 다음과 같이 표현하였습니다.  예명, 본명, 영문명 필드 순으로 비교하여 Null 아닌 값을 만나면 리턴합니다. 모든 필드가 Null 이면 기본값 '<Not Define>' 이 리턴됩니다.

이전에는 다음과 같이 사용하였습니다.

If (IsNull(예명), If (IsNull(본명) , If (IsNull(영문명) , '<Not Define>', 영문명), 본명), 예명)  As 대표명

위 예제에서 매개변수가 세 개인 예제를 표현하였는데 매개변수가 더 많은 경우 표현식 작성에 어려움을 갖고 있었고 또한 읽기에도 어려움이 있었습니다.  

 

Null 값에 대한 이해가 있어야 합니다. 

Null 값에 대한 설명글은 다른 글에서 소개합니다. 

 

Coalesce and EmptyIsNull 함수.pdf
0.24MB