MariaDB-널 값
NULL 값으로 작업 할 때는 알 수없는 값임을 기억하십시오. 유효한 값인 빈 문자열이나 0이 아닙니다. 테이블 생성에서 열 사양은 null 값을 허용하거나 거부하도록 설정할 수 있습니다. NULL 또는 NOT NULL 절을 사용하기 만하면됩니다. ID 번호와 같은 기록 정보가 누락 된 경우에 적용됩니다.
사용자 정의 변수는 명시 적으로 할당 될 때까지 NULL 값을 갖습니다. 저장된 루틴 매개 변수 및 로컬 변수를 사용하면 NULL 값을 설정할 수 있습니다. 지역 변수에 기본값이 없으면 NULL 값을 갖습니다.
NULL은 대소 문자를 구분하지 않으며 다음과 같은 별칭이 있습니다.
- UNKNOWN (부울 값)
- \N
NULL 연산자
표준 비교 연산자는 NULL (예 : =,>,> =, <=, <또는! =)과 함께 사용할 수 없습니다. NULL 값이있는 모든 비교는 true 또는 false가 아닌 NULL을 반환하기 때문입니다. NULL과 비교하거나 포함 할 수있는 경우에는 "<=>"(NULL-SAFE) 연산자를 사용해야합니다.
사용 가능한 다른 연산자는-
IS NULL-NULL 값을 테스트합니다.
IS NOT NULL-NULL 값이 없음을 확인합니다.
ISNULL-NULL 값을 발견하면 1 값을 반환하고 부재시 0을 반환합니다.
COALESCE-목록의 NULL이 아닌 첫 번째 값을 반환하거나 하나가 없으면 NULL 값을 반환합니다.
NULL 값 정렬
정렬 작업에서 NULL 값은 가장 낮은 값을 가지므로 DESC 순서는 맨 아래에 NULL 값이됩니다. MariaDB에서는 NULL 값에 대해 더 높은 값을 설정할 수 있습니다.
아래와 같이 두 가지 방법이 있습니다.
SELECT column1 FROM product_tbl ORDER BY ISNULL(column1), column1;
다른 방법은-
SELECT column1 FROM product_tbl ORDER BY IF(column1 IS NULL, 0, 1), column1 DESC;
NULL 함수
매개 변수가 NULL 인 경우 함수는 일반적으로 NULL을 출력합니다. 그러나 NULL 값을 관리하기 위해 특별히 설계된 함수가 있습니다. 그들은-
IFNULL()− 첫 번째 표현식이 NULL이 아니면 반환합니다. NULL로 평가되면 두 번째 식을 반환합니다.
NULLIF() − 비교 된 표현식이 같으면 NULL을 반환하고, 같지 않으면 첫 번째 표현식을 반환합니다.
SUM 및 AVG와 같은 함수는 NULL 값을 무시합니다.
NULL 값 삽입
NOT NULL로 선언 된 열에 NULL 값을 삽입하면 오류가 발생합니다. 기본 SQL 모드에서 NOT NULL 열은 대신 데이터 유형에 따라 기본값을 삽입합니다.
필드가 TIMESTAMP, AUTO_INCREMENT 또는 가상 열인 경우 MariaDB는 NULL 값을 다르게 관리합니다. AUTO_INCREMENT 열에 삽입하면 시퀀스의 다음 번호가 그 자리에 삽입됩니다. TIMESTAMP 필드에서 MariaDB는 대신 현재 타임 스탬프를 할당합니다. 이 자습서의 뒷부분에서 설명하는 항목 인 가상 열에는 기본값이 할당됩니다.
UNIQUE 인덱스는 많은 NULL 값을 보유 할 수 있지만 기본 키는 NULL이 될 수 없습니다.
NULL 값 및 변경 명령
ALTER 명령을 사용하여 열을 수정할 때 NULL 사양이없는 경우 MariaDB는 자동으로 값을 할당합니다.