SQLD발행일 2024. 11. 13.원본 https://blog.naver.com/jword_/223659303820 ↗

[SQLD] SQL NULL 연산 및 관련함수

[SQLD] SQL NULL 연산 및 관련함수 — #SQLD #개발자의도구들 #SQLNULL #SQL #NULL연산 #NULL관련함수 24년도 SQLD 제...

#SQLD#Naver Blog

#SQLD #개발자의도구들 #SQLNULL #SQL #NULL연산 #NULL관련함수

​

24년도 SQLD 제 55회 시험을 대비하며 정리한 글입니다.

\* 본글은 PC버전에 최적화 되어있습니다.

​

**\* **전체 목차는 여기를 참고해주세요.

​

SQL 기본 및 활용

SQL자격검정 실전문제

SQLD 기본 및 활용 part로 가장 많은 비중을 차지하는 파트입니다. 기본기는 제외하고 혼동될만한 부분을 정리해 보았습니다.

NULL

NULL 연산 정리

👉 핵심정리NULL + 연산(+. -, \*, /)의 결과는 NULLNULL과 비교연산(<, >, <=. >=, =)은 FALSE​집계함수 SUM(Col1)에 NULL 이 포함되면 제외하고 더함

NULL 값 생성 예시

👉 핵심정리service\_name VARCHAR2(100) NULL; -- table의 속성 ​INSERT INTO services VALUES service\_name = "" 입력시 NULL이 들어간다.혹은 col에서 NULL처리할 부분만 생략한다.혹은 명시적으로 NULL을 입력한다.insert into department values (301, '환경보건학과', NULL, NULL);

NULL 관련 함수

👉 핵심정리NVL(exp1, exp2): exp1이 NULL 이라면, exp2를 출력한다.NVL(sal, 500): sal 값의 NULL이면 500으로 대체단, exp1, exp2의 타입이 같아야한다.​ISNULL(exp1, exp2): 위와 동일하다.​NULLIF(exp1, exp2): exp1이, exp2와 같다면 NULL을 출력​하고, 같지 않다면 exp1을 그대로 리턴​COALESCE(exp1, exp2, exp3....): 여러 표현식에서 NULL 이아닌 최초의 표현식을 나타낸다.exp가 모두 NULL이라면 NULL을 return한다.NVL에서 기회를 여러번 두는 것과 같다.

오답노트

javascript 코드 예제
                                    Q. 실행 결과가 NULL인 SQL?

1. SELECT COALESCE(NULL, 'A') FROM DUAL;
2. SELECT NULLIF('A', 'A') FROM DUAL;
3. SELECT NVL('A', NULL) FROM DUAL;
4. SELECT NVL(NULL, 0) + 10 FROM DUAL;
javascript 코드 예제
                                    A. 2
javascript 코드 예제
                                    💡 NULLIF는 두 표현식이 서로 같다면 NULL을 출력한다.
1. 'A'로 대체
3. 'A'가 NULL이 아니라 대체가 안일어남
4. NULL이 0으로 대체된다.