"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 왜`null! = null`은 항상 SQL에서 true를 반환하지 않습니까?

왜`null! = null`은 항상 SQL에서 true를 반환하지 않습니까?

2025-03-24에 게시되었습니다
검색:917

Why Doesn't `NULL != NULL` Always Return True in SQL?

SQL의 Ternary Logic

NULL은 알려지지 않은 값을 나타냅니다. 이것은 "알 수없는"True와 False를 넘어서 세 번째 논리적 상태를 소개합니다. 결과적으로 NULL과의 불평등 비교는 3 가지 옵션 중 하나 일 수있는 Ternary Logic을 따릅니다.

여기서 (a b) A와 B가 모두 null이라면 위의 표현식은 그들이 진정으로 불평등한지 또는 둘 다 알려지지 않은지 판단 할 방법이 없기 때문에 "알 수없는"을 반환합니다.

  • NULL과의 간단한 불평등 점검이 항상 사실을 반환하지는 않을 수 있습니다. 정확한 결과를 보장하기 위해 "ins null"및 "null"이 필요합니다.
  • 예를 들어 다음 표현식은 null과의 불평등 비교를 올바르게 처리합니다 :
어디에서 (A b) 또는 (a b) 또는 (a는 null이고 b by is null is null)). 이러한 명시 적 검사를 통합하면 데이터베이스는 NULL 값과 관련된 가능한 모든 경우에 대해 올바른 논리적 결과 (True, False 또는 Unknown)를 결정할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3