시스템 결측값이 있는 레코드 처리
시스템 결측값이란?
시스템 결측값은 알려지지 않았거나 적용되지 않는 데이터 값을 나타냅니다. 데이터베이스에서 이러한 값은 종종 NULL 값으로 언급됩니다. 시스템 결측값은 공백값과는 다릅니다. 공백값은 일반적으로 유형 노드에 특정 값 또는 값의 범위로 정의되어 있고 사용자 정의 결측으로 간주될 수 있습니다. 공백값은 모델링 컨텍스트에서 다르게 처리됩니다.
시스템 결측값 구성
시스템 결측값은 데이터 소스에서 읽어들이는 데이터에 있을 수 있습니다(예: 데이터베이스 테이블에 NULL 값이 포함되어 있을 수 있음). 시스템 결측값은 표현식에서 undef
값을 사용하여 구성될 수 있습니다. 예를 들어, 다음 CLEM 표현식은 30
이하의 경우 Age
를 리턴하고 30
보다 큰 경우 결측값을 리턴합니다.
if Age > 30 then undef else Age endif
결측값은 또한 외부 결합이 수행될 때, 숫자가 0으로 나눠질 때, 음수의 제곱근이 계산될 때 및 기타 상황에서도 작성될 수 있습니다.
시스템 결측값 표시
시스템 결측값은 테이블과 다른 출력에 $null$
로 표시됩니다.
시스템 결측값 검정
특수 함수 @NULL을 사용하여 인수 값이 시스템 결측값인 경우 true
를 리턴하십시오. 예를 들어,
if @NULL(MyFieldName) then 'It is null' else 'It is not null' endif
함수에 전달된 시스템 결측값
함수에 전달된 시스템 결측값은 일반적으로 출력에 결측값을 전파합니다. 예를 들어, f1
필드 값이 특정 행에서 시스템 결측값이면 log(f1)
표현식 또한 해당 행을 시스템 결측값으로 평가합니다. 예외는 @NULL 함수입니다.
산술 연산자와 관련된 표현식에서 시스템 결측값
시스템 결측값을 포함하는 값에 산술 연산자를 적용하면 시스템 결측값이 생깁니다. 예를 들어, f1
필드의 값이 특정 행에 있는 시스템 결측값인 경우 f1 + 10
표현식은 해당 행에 대한 시스템 결측값도 평가합니다.
논리 연산자와 관련된 표현식에서 시스템 결측값
논리 연산자와 관련된 표현식에서 시스템 결측값에 대해 작업할 때 3차 값 논리(true, false 및 missing)의 규칙이 적용되고 진리표에서 설명될 수 있습니다. not, and 및 or의 공통 논리 연산자에 대한 진리표는 다음 테이블에 표시됩니다.
피연산자 | NOT 피연산자 |
---|---|
예 | 아니오 |
아니오 | 예 |
누락됨 | 누락됨 |
Operand1 | Operand2 | Operand1 AND Operand2 |
---|---|---|
예 | 예 | 예 |
예 | 아니오 | 아니오 |
예 | 누락됨 | 누락됨 |
아니오 | 예 | 아니오 |
아니오 | 아니오 | 아니오 |
아니오 | 누락됨 | 아니오 |
누락됨 | 예 | 누락됨 |
누락됨 | 아니오 | 아니오 |
누락됨 | 누락됨 | 누락됨 |
Operand1 | Operand2 | Operand1 OR Operand2 |
---|---|---|
예 | 예 | 예 |
예 | 아니오 | 예 |
예 | 누락됨 | 예 |
아니오 | 예 | 예 |
아니오 | 아니오 | 아니오 |
아니오 | 누락됨 | 누락됨 |
누락됨 | 예 | 예 |
누락됨 | 아니오 | 누락됨 |
누락됨 | 누락됨 | 누락됨 |
비교 연산자와 관련된 표현식에서 시스템 결측값
시스템 결측값과 비시스템 결측값을 비교할 때 출력은 참 또는 거짓 결과 대신에 시스템 결측값으로 평가합니다. 시스템 결측값은 서로 비교할 수 있습니다. 두 개의 시스템 결측값은 동일한 것으로 간주됩니다.
if/then/else/endif 표현식에서 시스템 결측값
조건식을 사용할 때 조건식이 시스템 결측값을 리턴하면 else
절의 값이 조건식에서 리턴됩니다.
선택 노드의 시스템 결측값
특정 레코드의 경우 선택 표현식이 결측값으로 평가되면 레코드는 선택 노드의 출력이 아닙니다. 이 조치는 포함 및 삭제 모드 둘 모두에 적용됩니다.
병합 노드의 시스템 결측값
키를 사용하여 병합할 때 키 필드에 시스템 결측값이 있는 모든 레코드는 병합되지 않습니다.
통합의 시스템 결측값
열에서 데이터를 통합할 때 결측값은 계산에 포함되지 않습니다. 예를 들어, { 1
, 2
, undef
}라는 세 개의 값이 있는 열에서 열의 값 합계는 3
으로 계산되고, 평균 값은 1.5
로 계산됩니다.