mssql 조건 중 문의사항이 있습니다. 0 2 1,491

by 쪼용 [SQLServer] [2017.08.08 16:22:38]


MSSQL을 사용한지 얼마 안되어서 궁금한점이 생겨 문의 드립니다.

조건에서 OUT_DATE 라는 필드에는 NULL 데이터와 그밖에 일자 데이터 그리고 '99991231' 데이터가 들어 있습니다.

조건으로 OUT_DATE <> '99991231' 이나 OUT_DATE != '99991231'을 사용하여 '99991231'을 제외한 모든 데이터를 조회하려고 하니

NULL인 데이터들이 조회가 되지 않아 문의 드립니다.

우회방법으로 OUT_DATE <> '99991231' OR OUT_DATE IS NULL을 하니 검색은 되나 혹시 왜 이런 현상이 발생하는지 궁금하여 문의 드립니다.

오라클을 주로 사용했었는데 오라클에선 이런 현상이 없었던걸로 기억합니다

답변 부탁드리겠습니다.

감사합니다ㅠㅠ

by jkson [2017.08.08 16:32:32]

null은 확정되지 않은 값으로 비교 연산을 할 수 없습니다( = <> != 등)

알 수 없는 값이랑 상수는 비교 불가능하다 생각하시면 좀 쉬울듯 합니다.

오라클도 마찬가지고요.

null은 항상 is null 또는 is not null로 조회해야 합니다.


by 쪼용 [2017.08.08 16:36:37]

아 그럼 오라클사용할때도 제가 잘못 기억을 하고 있었나보네요

빠른답변 감사드립니다!!

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입