NULL 및 UNKNOWN(Transact-SQL)
적용 대상: Microsoft Fabric의 Microsoft Fabric SQL 데이터베이스에 있는 Microsoft Fabric Warehouse의 SQL Server Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW) SQL 분석 엔드포인트
NULL
는 값을 알 수 없음을 나타냅니다. Null은 빈 값이나 0과는 다르며 두 null 값이 같지 않습니다. 두 null 값 간의 비교 또는 null 값과 다른 값 간의 비교는 각각 NULL
값을 알 수 없으므로 알 수 없는 값을 반환합니다.
Null 값은 일반적으로 알 수 없거나 해당되지 않거나 나중에 추가될 데이터를 나타냅니다. 예를 들어 고객이 주문을 할 때 고객의 중간 이니셜을 알 수 없을 수 있습니다.
고려 사항:
쿼리에서 null 값을 테스트하려면 절을 사용
IS NULL
하거나IS NOT NULL
절에 사용합니다WHERE
.열 또는 문에 명시적으로 명시
NULL
INSERT
하거나UPDATE
열을 문에서 제외INSERT
하여 열에 null 값을 삽입할 수 있습니다.테이블의 한 행을 테이블의 다른 행과 구분하는 데 필요한 정보로 Null 값을 사용할 수 없습니다. 기본 키 또는 배포 키와 같은 행을 배포하는 데 사용되는 정보를 예로 들어 있습니다.
설명
데이터에 null 값이 있는 경우 논리 및 비교 연산자는 단순히 UNKNOWN
TRUE
또는 FALSE
. 이와 같이 세 가지 결과를 가져오는 논리는 대부분 애플리케이션에서 오류의 원인이 됩니다. 연산자의 결과가 식에 의존 UNKNOWN
하지 않는 한 반환UNKNOWN
을 포함하는 UNKNOWN
부울 식의 논리 연산자입니다. 이러한 테이블은 이 동작의 예를 제공합니다.
다음 표에서는 한 식이 반환되는 AND
두 부울 식에 연산자를 적용한 결과를 보여 줍니다 UNKNOWN
.
식 1 | Expression 2 | 결과 |
---|---|---|
TRUE |
UNKNOWN |
UNKNOWN |
UNKNOWN |
UNKNOWN |
UNKNOWN |
FALSE |
UNKNOWN |
FALSE |
다음 표에서는 한 식이 반환되는 OR
두 부울 식에 연산자를 적용한 결과를 보여 줍니다 UNKNOWN
.
식 1 | Expression 2 | 결과 |
---|---|---|
TRUE |
UNKNOWN |
TRUE |
UNKNOWN |
UNKNOWN |
UNKNOWN |
FALSE |
UNKNOWN |
UNKNOWN |