빈 값 작업

빈 값은 특정 멤버, 튜플 또는 셀이 비어 있음을 나타냅니다. 빈 셀 값은 기본 팩트 테이블에서 지정한 셀에 대한 데이터를 찾을 수 없다는 것을 나타내거나 지정한 셀에 대한 튜플이 해당 큐브에 적합하지 않은 멤버 조합을 표시함을 나타냅니다.

[!참고] 빈 값은 0의 값과는 다르지만 대부분의 경우에는 빈 값을 0으로 취급합니다.

빈 값에 다음 정보가 적용됩니다.

  • IsEmpty 함수는 함수에 지정된 튜플이 식별한 셀이 비어 있는 경우 그리고 그런 경우에만 TRUE를 반환합니다. 그렇지 않으면 FALSE를 반환합니다.

    [!참고] IsEmpty 함수는 멤버가 비었는지 판단할 수 없습니다. 멤버가 비었는지 판단하려면 IS 연산자를 사용합니다.

  • 빈 셀 값이 숫자 연산자(+, -, *, /) 중 하나에 대한 피연산자인 경우 다른 피연산자가 비어 있지 않은 값이라면 빈 셀 값을 0으로 취급합니다. 두 피연산자 모두 빈 경우 숫자 연산자는 빈 셀 값을 반환합니다.

  • 빈 셀 값이 문자열 연결 연산자(+)에 대한 피연산자인 경우 다른 피연산자가 비어 있지 않은 값이라면 빈 셀 값을 빈 문자열로 취급합니다. 두 피연산자 모두 빈 경우 문자열 연결 연산자는 빈 셀 값을 반환합니다.

  • 빈 셀 값이 임의의 비교 연산자(=, <>, >=, <=, >, <)에 대한 피연산자인 경우 다른 피연산자의 데이터 형식이 숫자 또는 문자열인지에 따라 빈 셀 값을 각각 0 또는 빈 문자열로 취급합니다. 두 피연산자 모두 빈 경우 두 피연산자 모두 0으로 취급합니다.

  • 숫자 값을 정렬할 때는 빈 셀 값이 0과 동일한 위치에서 정렬됩니다. 빈 셀 값과 0 사이에서는 빈 셀이 0보다 앞에 정렬됩니다.

  • 문자열 값을 정렬할 때는 빈 셀 값이 빈 문자열과 동일한 위치에서 정렬됩니다. 빈 셀 값과 빈 문자열 사이에서는 빈 셀 값이 빈 문자열보다 앞에 정렬됩니다.

MDX 문과 큐브에서의 빈 값 처리

MDX 문에서 빈 값을 찾은 다음 유효한(즉, 비어 있지 않은) 데이터를 가진 셀에 대해 특정한 계산을 수행할 수 있습니다. 빈 셀 값이 포함되면 결과가 부정확해지는 계산(예: 평균)도 있으므로 계산을 수행할 때는 빈 값을 없애야 합니다.

기본 팩트 테이블 데이터에 빈 값을 저장할 수 있고 큐브에 빈 셀 값이 나타나지 않도록 하려면 빈 값을 없애거나 빈 값을 다른 값으로 결합하는 쿼리와 데이터 수정 문을 만들어야 합니다. 또한 측정값에 Null 처리 옵션을 사용하여 Null 팩트를 수정함으로써 Null을 0으로 변환하거나 빈 값으로 변환하거나 처리 중에 오류를 발생시킬 수도 있습니다.

빈 값과 비교 연산자

데이터에 빈 값이 있는 경우 논리 및 비교 연산자는 단순히 TRUE 또는 FALSE가 아니라 EMPTY라는 제3의 결과가 반환할 가능성도 있습니다. 이와 같이 세 가지 결과를 가져오는 논리는 대부분 응용 프로그램에서 오류의 원인이 됩니다. 다음은 빈 값 비교 결과를 정리한 테이블입니다.

이 테이블에서는 두 개의 부울 피연산자에 AND 연산자를 적용한 결과를 보여 줍니다.

AND TRUE EMPTY FALSE

TRUE

TRUE

FALSE

FALSE

EMPTY

FALSE

EMPTY

FALSE

FALSE

FALSE

FALSE

FALSE

이 테이블에서는 두 개의 부울 피연산자에 OR 연산자를 적용한 결과를 보여 줍니다.

OR TRUE FALSE

TRUE

TRUE

TRUE

EMPTY

TRUE

TRUE

FALSE

TRUE

FALSE

이 테이블에서는 NOT 연산자가 부정하거나 반대로 바꾼 부울 연산자의 결과를 보여 줍니다.

NOT 연산자를 적용할 부울 식 결과

TRUE

FALSE

EMPTY

EMPTY

FALSE

TRUE

참고 항목

참조

MDX 함수 참조(MDX)
MDX 연산자 참조(MDX)

개념

식(MDX)

관련 자료

차원 용도와 차원 관계 정의 및 구성
5단원: 차원과 측정값 그룹의 관계 정의

도움말 및 정보

SQL Server 2005 지원 받기