기본 콘텐츠로 건너뛰기

표현식에서 NULL 값 전파

이 페이지에서

표현식에서 NULL 값 전파

NULL 값은 몇 가지 논리적이고 상당히 합리적인 규칙에 따라 표현식에 전파됩니다.

함수

매개 변수가 함수에 대해 정의된 범위를 벗어나는 경우 일반적인 규칙에 따라 함수가 NULL을 반환합니다.

Example:  

  • asin(2) 반환 값: NULL
  • log(-5) 반환 값: NULL
  • round(A,0) 반환 값: NULL

위의 규칙에 이어 평가에 필요한 매개 변수가 NULL인 경우 일반적으로 이 함수는 NULL을 반환합니다.

Example:  

  • sin(NULL) 반환 값: NULL
  • chr(NULL) 반환 값: NULL
  • if(NULL, A, B) 반환 값: B
  • if(True, NULL, A)NULL을 반환합니다. 
  • if(True, A, NULL)A을 반환합니다. 

두 번째 규칙에서 형식을 테스트하는 논리 함수의 경우 예외가 적용됩니다.

Example:  

  • isnull(NULL)은 TRUE(-1)를 반환합니다.
  • isnum(NULL)은 False(0)를 반환합니다.

산술 및 문자열 연산자

이러한 연산자의 항에 NULL이 있으면 NULL이 반환됩니다.

Example:  

  • A + NULL 반환 값: NULL
  • A - NULL 반환 값: NULL
  • A / NULL 반환 값: NULL
  • A * NULLNULL을 반환합니다. 
  • NULL / ANULL을 반환합니다. 
  • 0 / NULLNULL을 반환합니다. 
  • 0 * NULLNULL을 반환합니다. 
  • A & NULLA을 반환합니다. 

관계형 연산자

관계형 연산자의 항에 NULL이 있으면 특수 규칙이 적용됩니다.

Example:  

  • NULL rel.op NULL 반환 값: NULL
  • A <> NULL은 TRUE(-1)를 반환합니다.
  • A < NULL은 False(0)를 반환합니다.
  • A <= NULL은 False(0)를 반환합니다. 
  • A = NULL은 False(0)를 반환합니다. 
  • A >=은 False(0)를 반환합니다. 
  • A > NULL은 False(0)를 반환합니다.