NULL 불평등이 거짓인 이유
SQL의 삼항 논리 적용은 NULL이 NULL과 같지 않은 이유를 이해하는 데 중요한 역할을 합니다. 삼항 논리에서 NULL은 특정 값이 아닌 알 수 없는 값을 나타냅니다. 이 개념은 동등성 및 부등성 테스트의 평가를 안내합니다.
동등성을 평가할 때 두 개의 NULL 값은 동일하지도 불평등하지도 않은 것으로 간주됩니다. 알 수 없는 상태는 다른 알 수 없는 상태와 확실히 비교할 수 없기 때문입니다. 따라서 (NULL = NULL) 표현식은 NULL을 반환하여 명확한 답이 없음을 나타냅니다.
부등식 테스트의 경우 (NULL != NULL)도 FALSE를 반환합니다. 이는 삼항 논리에 따라 알 수 없는 값이 다른 알 수 없는 값과 동일하지 않다고 명확하게 기술될 수 없기 때문입니다. 따라서 둘이 같은지 아닌지는 아직 알 수 없습니다.
불평등 검사의 의미
위의 논의는 표현식 (A != B)가 A 또는 B가 NULL인 경우에도 불평등을 테스트합니다. 이는 삼항 논리 규칙에 따라 NULL 값과 관련된 모든 작업은 알 수 없는 상태로 유지되어야 하기 때문입니다. 따라서 A와 B가 모두 NULL인 경우 표현식 (A != B)는 FALSE를 반환하며 이는 확실한 답이 없음을 나타냅니다.
A와 B가 모두 NULL인 경우 TRUE 결과를 명시적으로 요구하는 경우 더 자세한 표현을 사용할 수 있습니다.
WHERE ((A != B) OR (A IS NOT NULL AND B IS NULL) OR (A IS NULL AND B IS NOT NULL))
그러나 이 조건은 TRUE 결과가 필요한 특정 사용 사례에 적합하다는 점에 유의하는 것이 중요합니다. NULL 값의 경우. 대부분의 경우 삼항 논리 원리를 따르므로 더 간단한 표현(A != B)이면 충분합니다.
위 내용은 SQL에서 `NULL != NULL`이 FALSE를 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!