Data Base_Oracle/SQL

SQL 단일행 함수_변환함수, to_char() 출력 패턴

pathas 2020. 1. 2. 23:40

변환함수

데이터의 데이터타입을 변환해서 출력하는 함수

함수 설명
to_date() 문자형 데이터를 날짜형으로 변경
to_number() 문자형 데이터를 숫자형으로 변경
to_char() 날짜, 숫자형 데이터를 문자형 데이터로 변경(출력양식 지정), 가장 많이 쓰임
to_char(필드명, 출력 양식)

변환함수 사용례

▷ emp테이블에서 10번 부서에 근무하는 사원의 급여 앞에 $를 표시하고 세 자리마다 ,(콤마)를 표시
사번, 이름, 급여 순으로 출력하는데 급여가 높은 순으로 정렬

▶ [ SQL> select empno, ename, sal, to_char(sal, '$999,999') from emp where deptno=10 order by 3 desc; ]

EMPNO ENAME SAL TO_CHAR(SAL, '$999,999')
7839 KING 5000 $5,000
7782 CLARK 2450 $2,450
7934 MILLER 1300 $1,300

※ '$'대신 'L'을 사용하면 ₩(원화)표기를 할 수 있음

 

▷ 현재 시간을 년/월/일, 24시간 표기법으로 초단위까지 출력

▶ [ SQL> select to_char(sysdate, 'YYYY/MM/DD, HH24:MI:SS') from dual; ]

TO_CHAR(SYSDATE~)
2020/01/02, 15:29:26

to_char() 출력 패턴

패턴 종류 설명
YYYY 년도 4자리 표기
YY 년도 2자리 표기
MM 월을 숫자로 표시
MON 월을 알파벳으로 표시
DD 일 표시
DAY 요일 표시
DY 요일을 약어로 표기
패턴 종류 설명
AM or PM 오전(AM), 오후(PM) 시각 표시
A.M or P.M 오전(A.M), 오후(P.M) 시각 표시
HH or HH12 12시간 표기(1 ~ 12)
HH24 24시간 표기(0 ~ 23)
MI 분 표기
SS 초 표기
패턴 종류 설명
0 자릿수를 나타내며 자릿수가 맞지 않을 경우 0으로 채움
9 자릿수를 나타내며 자릿수가 맞지 않아도 채우지 않음
L 각 지역별 통화 기호 표기
. 소수점 표시
, 천 단위 자리 구분

to_char() 변환함수는 출력양식을 지정하는 함수로 굉장히 많이 사용되기 패턴들을 다양하게 사용해서 연습하면 좋겠습니다.