BACK END/DataBase

Oracle 함수 'SUBSTR' , 'DECODE', 'TO_CHAR'

라미보 2023. 1. 23. 01:33

 

 

 

Oracle 함수에 대해 알아보자.

 

  • SUBSTR
  • DECODE
  • TO_CHAR

 

 

참고) 데이터베이스마다 함수명이나 조건명이 다를 수 있다

 

 

 

 

1. SUBSTR

 

문자열 자르는 함수 입니다.

 

SUBSTR(문자열, 시작 위치, 길이)

문자열에서 시작 위치부터 길이만큼 출력합니다.

 

SELECT SUBSTR('APPLE',3,2) FROM DUAL;

 

 

SQL에서 실행시켜보면 아래와 같은 결과가 출력이 됩니다.

 

APPLE의 3번째부터 2글자 출력 결과

 

 

 

 

 

2. DECODE

 

 

DECODE 함수는 조건에 따라 결과를 처리합니다.

IF-THEN-ELSE 로직을 포함

 

 

DECODE(매개변수1,매개변수2,매개변수3,매개변수4)

  • 매개변수1과 매개변수2를 비교하여 조건에 맞으면 종료되고, 매개변수3의 값이 반환 됩니다.
  • 매개변수는 최대 255개까지 가능하다고 합니다!
  •  

아래의 쿼리는 'APPLE' 과 NULL을 비교하여 일치하면 'A'값을 반환, 일치하지 않으면 'B' 값을 반환합니다.

SELECT DECODE('APPLE',NULL,'A','B') FROM DUAL;

 

 

 

SQL에서 실행시켜 보면 아래와 같이 보입니다.

 

'APPLE' 과 NULL을 비교 하였을 때, 조건에 맞지 않아 'B'가 출력

 

 

 

 

 

 

3. TO_CHAR

 

날짜, 문자 숫자, 값을 지정한 형식의 VARCHAR2 타입 문자열로 변환하는 함수입니다.

 

TO_CHAR(날짜 데이터 타입, '지정형식')

 

 

SELECT TO_CHAR(TO_DATE('20221225'), 'YYYY-MM-DD') FROM DUAL;

 

SELECT TO_CHAR(SYSDATE, 'YYYY_MM_DD') FROM DUAL;

 

SELECT TO_CHAR(SYSDATE, 'HH:MI:SS PM') FROM DUAL;

SELECT TO_CHAR(SYSDATE, 'YYYY/MM/DD HH:MI:SS PM') FROM DUAL;