본문 바로가기
카테고리 없음

오라클 다양한 날짜 / 시간 포맷 변경 (TO_CHAR) 사용법 & 예제

by kangs' tong 2023. 12. 7.

오라클 다양한 날짜/시간 포맷 변경 (TO_CHAR) 사용법 & 예제

1. TO_CHAR 함수란?

TO_CHAR 함수는 오라클 데이터베이스에서 날짜 및 시간 값을 원하는 포맷으로 변환하는 데 사용되는 함수입니다. 이 함수를 사용하면 날짜와 시간 값을 다양한 형식으로 표현할 수 있습니다.

TO_CHAR 함수는 다음과 같은 구조를 가지고 있습니다:

TO_CHAR(date, format, [nlsparam])
  • date: 변경하고자 하는 날짜/시간 값입니다.
  • format: 날짜/시간 값을 원하는 형식으로 지정합니다.
  • nlsparam (optional): 날짜/시간 값을 변경하는 데 사용할 NLS 설정을 지정합니다.

2. 날짜 포맷 사용 예제

2.1. 기본 포맷으로 변경하기

SELECT TO_CHAR(SYSDATE, 'DD-MON-YYYY HH24:MI:SS') AS current_datetime
FROM dual;

-- 결과: 15-DEC-2022 15:30:45

위의 예제에서는 SYSDATE 함수를 사용하여 현재 시스템 날짜와 시간을 가져와 TO_CHAR 함수를 이용하여 'DD-MON-YYYY HH24:MI:SS' 포맷으로 변환하였습니다.

2.2. 날짜/시간 요소별로 표시하기

SELECT TO_CHAR(SYSDATE, 'YYYY') AS year,
       TO_CHAR(SYSDATE, 'MM') AS month,
       TO_CHAR(SYSDATE, 'DD') AS day,
       TO_CHAR(SYSDATE, 'HH24') AS hour,
       TO_CHAR(SYSDATE, 'MI') AS minute,
       TO_CHAR(SYSDATE, 'SS') AS second
FROM dual;

-- 결과: 2022, 12, 15, 15, 30, 45

위의 예제에서는 SYSDATE 함수를 사용하여 현재 시스템 날짜와 시간을 가져와 TO_CHAR 함수를 이용하여 각각의 요소별로 변환하였습니다.

2.3. 요일 포맷으로 변경하기

SELECT TO_CHAR(SYSDATE, 'DAY') AS day_of_week
FROM dual;

-- 결과: THURSDAY

위의 예제에서는 SYSDATE 함수를 사용하여 현재 시스템 날짜와 시간을 가져와 TO_CHAR 함수를 이용하여 'DAY' 포맷으로 요일로 변환하였습니다.

2.4. 주차 포맷으로 변경하기

SELECT TO_CHAR(SYSDATE, 'WW') AS week_number
FROM dual;

-- 결과: 50

위의 예제에서는 SYSDATE 함수를 사용하여 현재 시스템 날짜와 시간을 가져와 TO_CHAR 함수를 이용하여 'WW' 포맷으로 주차로 변환하였습니다.

3. 시간 포맷 사용 예제

3.1. 12시간 단위 표시하기

SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH:MI:SS AM') AS current_datetime
FROM dual;

-- 결과: 2022-12-15 07:30:45 PM

위의 예제에서는 SYSDATE 함수를 사용하여 현재 시스템 날짜와 시간을 가져와 TO_CHAR 함수를 이용하여 'YYYY-MM-DD HH:MI:SS AM' 포맷으로 변환하였습니다. AM/PM을 추가하여 12시간 단위로 표시하였습니다.

3.2. 시간대 표시하기

SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH:MI:SS TZH:TZM') AS current_datetime
FROM dual;

-- 결과: 2022-12-15 15:30:45 +09:00

위의 예제에서는 SYSDATE 함수를 사용하여 현재 시스템 날짜와 시간을 가져와 TO_CHAR 함수를 이용하여 'YYYY-MM-DD HH:MI:SS TZH:TZM' 포맷으로 변환하였습니다. 시간대 정보를 포함하여 표시하였습니다.

4. 전체 내용 정리

오라클의 TO_CHAR 함수를 사용하면 다양한 날짜와 시간 값을 원하는 포맷으로 변경할 수 있습니다. 위의 예제를 통해 기본 포맷, 요소별 표시, 요일 포맷, 주차 포맷 등을 예제로 살펴보았습니다. 추가로 12시간 단위 표시와 시간대 표시에 대한 예제도 제공되었습니다.

TO_CHAR 함수는 날짜와 시간 값을 원하는 형식으로 변경하여 다양한 용도로 활용할 수 있습니다. 필요에 따라 포맷을 잘 활용하여 원하는 날짜와 시간 형식으로 표현하도록 노력해보세요.

댓글