В 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
Премахване на подплата
По подразбиране месецът е допълнен с крайни празни места до дължината 4, което е дължината на viii
. Можем да видим това в горните примери.
За да потиснете запълването, използвайте fm
модификатор на формат:
SELECT
TO_CHAR(date '2030-04-08', 'DD-fmRM-YYYY')
FROM DUAL;
Резултат:
08-IV-2030
Обърнете внимание, че това ще потисне всяко подпълване от всички следващи елементи. В нашия случай запълването също ще бъде потиснато от годината. Ако годината ни е по-малка от четири цифри, тогава няма да има водещи нули:
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