Oracle Databaseでは、RM
format要素を使用すると、TO_CHAR()
を使用するときに、月をローマ数字で返すことができます。 機能。
fm
を使用することもできます パディングを抑制する修飾子。
例
デモンストレーションの例を次に示します。
SELECT
TO_CHAR(date '2030-04-08', 'DD-RM-YYYY')
FROM DUAL;
結果:
08-IV -2030
この場合、月番号は04
です。 、および同等のローマ数字はIV
です。 。
小文字と大文字
rm
を使用できます (小文字)ローマ数字を小文字で返すには:
SELECT
TO_CHAR(date '2030-04-08', 'DD-rm-YYYY')
FROM DUAL;
結果:
08-iv -2030
パディングを削除
デフォルトでは、月はviii
の長さである4の長さまで末尾の空白で埋められます 。上記の例でそれを見ることができます。
パディングを抑制するには、fm
を使用します フォーマット修飾子:
SELECT
TO_CHAR(date '2030-04-08', 'DD-fmRM-YYYY')
FROM DUAL;
結果:
08-IV-2030
これにより、後続のすべての要素からのパディングが抑制されることに注意してください。私たちの場合、パディングもその年から抑制されます。年の長さが4桁未満の場合、先行ゼロはありません:
SELECT
TO_CHAR(date '0030-04-08', 'DD-fmRM-YYYY')
FROM DUAL;
結果:
08-IV-30
先行ゼロを保持する場合は、YYYY
のプレフィックスを付けることができます。 fm
を使用 :
SELECT
TO_CHAR(date '0030-04-08', 'DD-fmRM-fmYYYY')
FROM DUAL;
結果:
08-IV-0030
fm
モディファイアは、塗りつぶしモードを有効/無効にするスイッチのように効果的に機能します。
日付のすべてのパディングを抑制したい場合は、フォーマットモデル全体に単一のfm
を追加するだけです。 :
SELECT
TO_CHAR(date '0030-04-08', 'fmDD-RM-YYYY')
FROM DUAL;
結果:
8-IV-30