TO_CHAR
Syntax
TO_CHAR
(
value IN { smallint | int | bigint | real | double precision | numeric | text | timestamp | timestamptz }
[, fmt IN text]
)
RETURNS text
개요
숫자, 날짜, 타임스탬프 또는 문자열 값을 지정한 포맷 모델(fmt)에 따라 문자열로 변환한다.
포맷 모델이 제공되지 않으면 각 데이터 타입의 기본 출력 형식에 따라 문자열로 변환된다.
숫자형의 경우 정수, 부동소수점, 그리고 numeric 값을 포맷에 따라 변환하며,
날짜와 타임스탬프는 지정된 형식(예: 'YYYY-MM-DD', 'HH24:MI:SS')으로 변환된다.
파라미터
파라미터
설명
value
smallint
| int
| bigint
| real
| double precision
| numeric
| text
| timestamp
| timestamptz
변환할 대상 값이다. 숫자, 날짜, 타임스탬프 또는 문자열 값을 입력할 수 있다. text
타입의 경우, fmt 인자를 사용할 수 없으며, 인자로 입력받은 문자열을 그대로 반환한다.
fmt
text
타입이다;출력 형식을 지정하는 포맷 모델.숫자형은 예를 들어 'FM9999', 날짜/시간은 'YYYY-MM-DD HH24:MI:SS' 등으로 지정할 수 있다.
지원하는 포멧 모델은 PG 공식 문서 를 참조한다.
* 날짜/시간 포멧 모델 * 숫자 포멧 모델
예제
-- 숫자형 값 변환 (포맷 없이)
SELECT oracle.TO_CHAR(12345);
to_char
---------
12345
(1 row)
-- 숫자형 값 변환 (포맷 적용)
SELECT oracle.TO_CHAR(12345, 'FM0000000');
to_char
---------
0012345
(1 row)
-- 날짜형 값 변환 (기본 형식)
SELECT oracle.TO_CHAR(oracle.SYSDATE());
to_char
---------------------
2025-03-07 00:57:44
(1 row)
-- 날짜형 값 변환 (포맷 적용)
SELECT oracle.TO_CHAR(oracle.SYSDATE(), 'DD-MM-YYYY SS:MI:HH24');
to_char
---------------------
07-03-2025 46:58:00
(1 row)
-- 타임스탬프 변환 (timestamptz)
SELECT oracle.TO_CHAR(oracle.SYSTIMESTAMP(), 'YYYY-MM-DD"T"HH24:MI:SS');
to_char
---------------------
2025-03-06T15:59:30
(1 row)
Last updated