В Oracle Database можем да използваме TH Елемент формат за добавяне на суфикса на пореден номер към резултата от TO_CHAR() операция при форматиране на дати.
Например, вместо да извеждате 10 Feb можем да изведем 10 Feb . Или вместо да извеждате 21 century , можем да изведем 21st century . Същото важи и за компонентите за изписана дата. Например вместо Twenty One , можем да изведем Twenty First .
Пример
Ето пример за демонстрация:
SELECT TO_CHAR(DATE '2030-12-01', 'Ddth Month')
FROM DUAL; Резултат:
01st December
Можем да използваме fm модификатор на формат за премахване на водещата нула, ако е необходимо:
SELECT TO_CHAR(DATE '2030-12-01', 'fmDdth Month')
FROM DUAL; Резултат:
1st December
Имайте предвид, че изписването с главни букви на поредния номер се определя от съответния елемент на формат (в този случай Dd част), не TH наставка.
Ето какво се случва, когато променим втория d до главни букви:
SELECT TO_CHAR(DATE '2030-12-01', 'fmDDth Month')
FROM DUAL; Резултат:
1st December
Така че, въпреки че предоставихме th суфикс с малки букви, това не оказва влияние върху резултата. Изписването с главни букви се определя от елемента формат (без fm). модификатор на формат).
Можем също да добавим поредния номер, когато връщаме други компоненти за дата, като века:
SELECT TO_CHAR(DATE '2030-12-30', 'Ccth "Century"')
FROM DUAL; Резултат:
21st Century
Изписани дати
Можем да добавим SP форматен елемент, за да има изписана част от датата:
SELECT TO_CHAR(DATE '2030-12-30', 'CCTHSP "Century"')
FROM DUAL; Резултат:
TWENTY-FIRST Century
И можем да използваме главни букви според изискванията:
SELECT TO_CHAR(DATE '2030-12-30', 'Ccthsp "Century"')
FROM DUAL; Резултат:
Twenty-First Century
Ето какво се случва, когато пропуснем TH спецификатор на формат:
SELECT TO_CHAR(DATE '2030-12-30', 'Ccsp')
FROM DUAL; Резултат:
Twenty-One