페이스북 광고가 떠서 보다가 아래와 같은 문제가 있었다.
문제
다음 쿼리문의 빈칸에 들어가면 오류가 생기는 구문을 고르시오.
문제 : select ( ) from dual;
1. null+1
2. null * null
3. 2/null
4. null<1
이해못하고 순간벙쪄서 보는데 처음엔 null이 더하기 곱하기 나누기 다 된다고?? 싶어서 모두 다 정답아니야? 라고 생각했는데 진짜 오만이었다..
정답은 3번 이다.
설명
NULL에 더하기와 곱하기 연산을 수행할 수 있다. 하지만 NULL과 숫자를 더하거나 곱하면 결과는 항상 NULL이 된다. 이는 데이터베이스의 특성으로, NULL은 "알 수 없는 값"을 나타내기 때문에 숫자와의 연산 결과도 알 수 없는 값이 되는 것이다.
예를 들어:
- NULL + 1 = NULL
- NULL * 5 = NULL
또한, 나눗셈 연산에서 0으로 나누는 것은 오류를 발생시키기 때문에 다음과 같이 NULL과 나눗셈을 조합하는 경우도 오류가 발생한다.
- 2 / NULL = NULL (오류 발생)
이러한 특성을 이해하고 쿼리문 작성 시 주의하여야 한다. 연산 중에 NULL 값이 발생하지 않도록 NULL 여부를 체크하거나 NVL 함수 등을 사용하여 NULL 값을 다른 값으로 대체하는 방법을 고려할 수 있다.
라는 내용을 찾았다.
정말 기초인데도 애매한 부분이었던것같다. 더 공부할수있도록 해야겠다.
'DBMS > DataBase' 카테고리의 다른 글
[PostgreSql] Boolean 타입 데이터 삽입 (0) | 2023.08.09 |
---|---|
[PostgreSQL] 우분투 리눅스에서 외부접속하는 방법 (0) | 2023.05.09 |
[DB] 데이터베이스 정규화의 필요성 (0) | 2023.01.20 |
[데이터베이스] ERD 개념 및 작성방법 (0) | 2022.05.11 |
[ORACLE,CUBRID] 통계 데이터 뽑아오기 (상위RANK, 하위기타나눠서) (0) | 2021.12.15 |