riboooo
Daily Traveler 리보
riboooo
전체 방문자
오늘
어제
  • 분류 전체보기 (71)
    • 프로젝트,발표 (2)
    • IT (67)
      • HTML ,CSS (3)
      • JAVA (22)
      • SQL (37)
      • 자료구조,알고리즘 (0)
      • PYTHON (4)
      • 보안 (0)
      • 서버 구축 (0)
      • GITHUB (1)
    • About ribo (2)
      • 커리어 (1)
      • 회고록 (1)
      • 버킷리스트 (0)
      • 일기 (0)
      • 잡담 (0)
    • 책 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • SQL
  • INSTALLED_APPS
  • django설계
  • ORACLE 조건문
  • 오라클
  • join
  • ORACLE 날짜 관련 함수
  • oracle
  • ORACLE 숫자 함수
  • inspectdb
  • 시간 중복 활용
  • prewise
  • Django
  • ORACLE CASE
  • ORACLE NULL 함수
  • non-prewise
  • select
  • 네이버핵데이
  • 자바코딩컨벤션
  • java

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
riboooo

Daily Traveler 리보

IT/SQL

[ORACLE] NULL 관련 함수

2020. 6. 30. 16:58

NULL과의 연산은 NULL을 반환하기 때문에 사용

NVL

expr1 이 NULL이면 expr2 반환 그외는 expr1 반환

NVL(expr1, expr2)

--if(expr1 == null)
--    return expr2;
--else
--    return expr1;

SELECT empno, sal, comm, NVL(comm, 0)
FROM emp;

NVL2

expr1이 null이 아니면 expr2, 그외엔 expr3 반환

NVL2(expr1, expr2, expr3)

--if(expr1 != null)
--    return expr2;
--else
--    return expr3;

SELECT empno, sal, comm, NVL2(comm, comm, 0)
FROM emp;

NULLIF

expr1과 expr2가 같으면 null을 반환, 그외엔 expr1 반환

NVLLIF(expr1, expr2)

-- if(expr1 == expr2)
--        return null
-- else
--    return expr1

-- sal 이 3000이면 NULL 반환

SELECT ename, sal, comm, NULLIF(sal,3000)
FROM emp;

COALESCE

인자 중에 가장 처음으로 NULL값이 아닌 값을 갖는 인자를 반환

COALESCE(expr1, expr2............)

--if (expr1 != null)
--    return expr1
--else
--    COALESCE(expr2, ....)

SELECT COALESCE(NULL, NULL, 30, NULL)   -- 30 반환
FROM dual;
  • NULL 함수 실습

      SELECT  ename, mgr, NVL(mgr,111), hiredate, NVL(hiredate, SYSDATE)
      FROM emp;
    
      SELECT empno, ename, mgr, NVL(mgr,9999) mgr_n, NVL2(mgr,mgr,9999) mgr_n_1, COALESCE(mgr,9999) mgr_n_2
      FROM emp;
    
      SELECT userid, usernm, reg_dt, NVL(reg_dt, SYSDATE)
      FROM users;
반응형

'IT > SQL' 카테고리의 다른 글

[ORACLE] GROUP BY 함수  (0) 2020.07.01
[ORACLE]SQL 조건문(Condition)  (0) 2020.07.01
[ORACLE] 형변환 / 실행계획 / 국제화 i18n  (0) 2020.06.30
[ORACLE] 문자열 함수, 숫자 관련 함수, 날짜 관련 함수  (0) 2020.06.30
[ORACLE] 바인딩 변수/ SQL developer  (0) 2020.06.29
    riboooo
    riboooo
    최준영 https://github.com/riboooo

    티스토리툴바