" 연산자가 SQL에서 NULL과 비교하지 못합니까?
" />
SQL의 NULL 비교 이해
SQL은 "!=" 및 "<>"를 사용합니다. 불평등 검사를 위해. 그러나 이러한 연산자는 NULL
값
문제:
다음 SQL 쿼리를 고려하세요.
SELECT * FROM MyTable WHERE MyColumn != NULL; SELECT * FROM MyTable WHERE MyColumn <> NULL; SELECT * FROM MyTable WHERE MyColumn IS NOT NULL;
처음 두 쿼리는 빈 결과 집합을 반환하는 반면, 세 번째 쿼리는 568개의 행을 올바르게 반환합니다. 왜 이런 불일치가 발생하는 걸까요?
설명:
"!=" 및 "<>" 값을 비교하세요. 그러나 NULL
은 값이 아닙니다. 이는 값이 없음을 의미합니다. 따라서 이러한 연산자는 NULL
비교
대신 IS NULL
또는 IS NOT NULL
을 사용하세요. 이러한 술어는 특히 값의 존재 여부를 확인합니다. 세 번째 쿼리의 성공은 IS NOT NULL
.
핵심 사항:
NULL
이 아닌 값을 테스트하려면 IS NOT NULL
을 사용하세요.NULL
이 아닌 특정 값과 비교합니다.NULL
은 누락된 데이터를 나타내므로 어떤 값과 같거나 같지 않다고 간주할 수 없습니다.위 내용은 '!=' 및 '<>' 연산자가 SQL에서 NULL과 비교하지 못하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!