Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Filter, Case와 Join에서 null 처리하기

null은 값이 없거나 알 수 없는 상태를 나타냅니다. 조건식은 true, false 또는 null을 반환할 수 있으며, 조건을 충족하는 값은 true뿐입니다. false와 null은 조건을 충족하지 않습니다.

동등 비교의 두 방식

is equal to는 null을 비교 가능한 값으로 다루는 null-safe 동등 비교입니다. 두 값이 모두 null이면 true이고 하나만 null이면 false입니다. is not equal to는 이 동등 비교의 반대 결과를 사용합니다.

is equal to (not null safe)와 is not equal to (not null safe)는 한쪽이라도 null이면 결과가 null입니다.

왼쪽오른쪽null-safe 같음null-safe 다름not-null-safe 같음 또는 다름
nullnulltruefalsenull
null값falsetruenull
값nullfalsetruenull

두 값이 모두 존재할 때는 각각 실제 값의 같음 또는 다름을 비교합니다. Equals 표현식의 Null safe 설정으로 이 차이를 확인할 수 있습니다.

값의 누락 여부만 확인하려면 is null 또는 is not null을 사용합니다. 이 두 조건은 true 또는 false를 반환합니다.

변환별 조건 사용

변환조건 결과의 처리
Filter의 Keep rowstrue인 행만 유지합니다. false 또는 null인 행은 제외합니다.
Case순서대로 조건을 평가하여 처음 true인 분기의 값을 반환합니다. null 조건은 건너뛰고 다음 분기나 기본값으로 진행합니다.
Jointrue인 두 행만 일치하는 것으로 봅니다. null 조건은 일치하지 않습니다.

Join에서 일치하지 않은 행의 처리 방식은 조인 유형에 따라 다릅니다. Inner는 제외하고, Left, Right 또는 Outer는 보존하는 쪽의 행을 남기면서 상대편 열을 null로 채울 수 있습니다.

null-safe 조인에서 양쪽에 같은 null 키가 여러 개 있으면 서로 일치하는 행 조합도 생길 수 있습니다. 결측값을 같은 업무 키로 볼지 먼저 정하고 필요한 경우 명시적인 is null 조건으로 별도 처리합니다.