*SQL_Oracle*

DML < SELECT> 함수 - 단일행 함수 2

깐부로부터 2021. 11. 4. 00:42

< 날짜 관련 함수 >

- DATE 타입

: 년, 월, 일, 시, 분, 초를 다 포함한 자료형

 

-- SYSDATE : 현재 시스템 날짜 반환

 

- MONTHS_BETWEEN(DATE1, DATE2)

: 두 날짜 사이의 개월수 반환
NUMBER타입 반환 DATE2가 미래일 경우 음수가 나올 수 있음

 

 

 

 

- ADD_MONTH(DATE, NUMBER)

: 특정 날짜에 해당 숫자만큼의 개월수를 더한 날짜 반환

 

 

 

- NEXT_DAY

: 특정날짜에서 가까운 해당 요일을 찾아 날짜를 반환

요일을, 숫자로도 표시 가능

 

 

 

- LAST_DAY

: 해당 특정 날짜 달의 마지막 날짜를 구해서 반환(DATE타입반환)

오늘이 11월이라 11월 막날이 나옴

 

 

 

EXTRACT 

: 년도, 월, 일 정보를 추출해서 반환(NUMBER타입으로 반환)
     
-EXTRACT(YEAR FROM DATE) : 특정날짜로부터 년도만 추출
-EXTRACT(MONTH FROM DATE) :  특정날짜로부터 월만 추출
-EXTRACT(DAY FROM DATE) : 틀정 날짜로부터 일만 추출

 

 

 

 

< 형변환 함수 >

NUMBER/DATE => CHARACTER

- TO_CHAR(NUMBER/DATE)

: 숫자형 또는 날짜형 데이터를 문자형 타입으로 변환 (CHARACTER 타입으로 반환)

 

 

 

 NUMBER/CHARACTER => DATE

-TO_DATE(NUMBER/CHARACTER)

:  숫자형 또는 문자형 데이터를 날짜형으로 변환(DATE 타입 변환)

 

 

 

CHARACTER => NUMBER

TO_NUMBER(CHARACTER)

: 문자형 데이터를 숫자형으로 변환(NUMBER타입 변환)

 

 

 

 

< NULL 처리 함수 >

해당 컬럼이 NULL의 반환할 결과값을 넣어 줄 수 있음

 

[표현법]

NVL(컬럼명, 반환할 결과값)

 

 

 

< 선택 함수 >

- DECODE(비교대상, 조건, 결과값)
   

-- 자바에서의 switch문--
    switch(비교대상) {
    case 조건값 1: 결과값1;
    case 조건값 2: 결과값2;
    ........
    default : 결과값;

 

 

 

 

- CASE WHEN THEN 구문
    
    자바에서 IF-ELSE IF문 같은 느낌
    IF-ELSE IF문 같은느낌
    
    [ 표현법 ]
    CASE WHEN 조건식1 THEN 결과값1
        WHEN 조건식2 THEN 결과값2
        ..
        ELSE 결과값
    END

 

 

'*SQL_Oracle*' 카테고리의 다른 글

DML < SELECT > GROUP BY , HAVING , 집합 연산자  (0) 2021.11.06
DML < SELECT> JOIN  (0) 2021.11.05
DML <SELECT> 함수 - 그룹 함수  (0) 2021.11.04
DML < SELECT > 함수 - 단일행 함수 1  (0) 2021.11.03
DML <SELECT> 기본문법  (0) 2021.11.02