ORACLE/フォーマット形式編

オラクルちょこっとリファレンス

HOME > フォーマット形式編

フォーマット形式

日付型や数値型は、表示させたい形式(フォーマット)を変えたい場合がありますが、そうした場合に同じデータを使って表示形式だけを変えて表示させることができます。

日付フォーマット

日付フォーマット記号の一覧です。

フォーマット説明
YYYY
YY年の下2桁
RR00~49は2000~2049年、
50~99は1950~1999年を表す
E元号の略称
EE元号
Q四半期(1~4)
(1:1~3月、2:4~6月、3:7~9月、4:10~12月)
MM月(01~12)
DD日(1~31)
DDD通年での日(1~366)
HH時間(1~12)
HH24時間(0~23)
MI分(0~59)
SS秒(0~59)
FFミリ秒
SSSSS午前0時から数えた秒数
D曜日(日→1 ~ 土→7)
DY曜日(MON,月 など)
DAY曜日(Monday,月曜日 など)
日付フォーマット例文
SELECT TO_CHAR(sysdate, 'YYYY-MM-DD DAY') FROM DUAL; → 2006-03-05 日曜日 SELECT TO_CHAR(sysdate, 'YYYY/MM/DD HH24:MI:SS') FROM DUAL; → 2006/03/15 16:07:11

数値フォーマット

数値フォーマット記号の一覧です。

フォーマット説明
0桁数に満たない場合は0埋めする
9桁数に満たない場合はその桁を表示しない
FM前後の空白を取り除く
S「+」か「-」の符号をつける
数値フォーマット例文
SELECT TO_CHAR(1234567, '999,999,999') FROM DUAL; → 1,234,567 SELECT TO_CHAR(1234567, '000,000,000') FROM DUAL; → 001,234,567 SELECT TO_CHAR(42.195, '999.99') FROM DUAL; → 42.20 (小数点以下桁数オーバーの場合は四捨五入) SELECT '*' || TO_CHAR(789, 'FM000000') || '*' FROM DUAL; → *000789* SELECT '*' || TO_CHAR(789, '000000') || '*' FROM DUAL; → * 000789* SELECT TO_CHAR(68000, 'S999,999') FROM DUAL; → +68,000

※フォーマット形式の桁数が指定した数値よりも少ないと「#」が表示されます。

ToTop