심심한 개발자의 취미생활

변환함수

변환함수

  • 특정 데이터 타입을 다양한 형식으로 출력하고 싶을 경우에 사용되는 함수임
  • 연산의 대상 데이터가 문자형과 숫자형의 혼합인 경우 어느 한 쪽의 데이터 타입으로 변경해야 연산이 가능함
    • 오라클의 경우 문자형 데이터를 숫자형으로 바꾸거나 숫자형 데이터를 문자형 데이터로 바꿔 연산을 수행하는데, 이를 암시적(Implicit)형 변환 또는 자동 변환이라함
  • 명시적(Explicit) 데이터 유형 변환은 변환 함수를 사용하여 수행됨
  • 한 데이터 우형을 다른 데이터 유형으로 변환하여, 함수 이름의 형식은 일반적으로 TO_ 출력 규칙을 따름

TO_CHAR

  • TO_CHAR(날짜, 'format') 함수를 이용해 날짜를 format형태의 문자로 변환함
  • 날짜 Format 요소
    FORMAT 요소 의미
    YYYY, YYY, YY, Y - 년도를 뒤에서 지정한 만큼 표시함
    YEAR - 년도를 영문으로 표시함
    Q - 해당 날짜의 분기 정보를 1, 2, 3, 4로 표시함
    MM - 01, 02,... 12의 두자리 월 정보를 표시함
    MON, MONTH - JAN, JANUARY 형태로 월을 표시함
    W, WW, IW - 해당 월이나 해당 년도의 몇 번째 주를 표시
    D - 1 ~ 7 일요일 1, 월요일 2, 토요일 7로 표시함
    DD, DDD - 해당 월이나 해당 년도의 몇 번째 날인지 표시함
    DY, DAY - MON, MONDAY 형태로 요일을 표시함
    HH, MI, SS - 시간, 분, 초 정보를 표시함

TO_CHAR(숫자)

  • TO_CHAR(숫자, 'FORMAT) 함수를 이용해 숫자를 FORMAT 형태의 문자로 변환함
  • 숫자 FORMAT 요소
    요소 설명 예제 결과
    9 - 숫자 위치(9의개수가 표시 폭(width)을 결정) 999999 1234
    0 - 선행 제로 표시 000000 001234
    $ - 부동 달러 기호 표시 $999999 $1234
    L - 부동 지역 통화 기호 표시 L999999 FF1234
    . - 지정된 위치의 소수점 표시 999999.99 1234.00
    , - 지정된 위치의 쉼표 표시 999,999 1,234
    MI - 빼기 기호를 오른쪽에 표시 999999MI 1234-
    PR - 음수를 <> 괄호루 묶어서 표시 999999PR <1234>
    EEEE - 과학 표기 (형식에 4개의 E를 지정) 99.999EEEE 1.234E+03

TO_DATE / TO_NUMBER

  • TO_DATE 함수를 사용하여 문자열을 날짜형으로 변환
  • TO_DATE(ANSWK, '적용할 날짜 요소')
  • TO_DATE 함수 사용시 날짜 정보중 사용자 지저하지 않은 요소는 기본갑으로 적용된
    • 년월 => SYSDATE의 년월이 기본값으로(현재날짜)
    • 일시분조 => 01일 00시 00분 00초
  • TO_NUMBER 함수를 사용하여 문자열을 숫자 형식으로 변환