Когато използвате Oracle Database, можете да използвате TO_CHAR(datetime) функция за връщане на различни части от стойност за дата и час, включително частични секунди.
За да върнете част от секунди от стойност за дата и час, използвайте FF форматен елемент.
Пример
Ето пример за демонстрация:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF')
FROM DUAL; Резултат:
123456789
Възможно е също да се ограничи прецизността чрез добавяне на число към FF част:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF5')
FROM DUAL; Резултат:
12345
Числото може да бъде 1 до 9 .
Добави частта за секундите
В горните примери върнах само частта от секундите и нищо друго.
Можем да включим секундната част, както и дробните секунди. За да направите това, използвайте SS . Можем също да използваме X за да посочите основния символ (символът, използван за разделяне на цялата част от дробната част):
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL; Резултат:
37.123456789
Въпреки че бихте могли изрично да предоставите свой собствен основен знак – например точка (.) ), X Елементът format може да бъде полезен за пренасяне на различни езици/територии.
Когато стартирах горните примери, моят NLS_TERRITORY параметърът е зададен на AUSTRALIA , което е довело до символа за основа, който е точка.
Ето какво се случва, когато променя моята NLS_TERRITORY параметър към GERMANY :
ALTER SESSION SET NLS_TERRITORY = 'GERMANY';
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL; Резултат:
37,123456789
Сега символът за основа е запетая.
Всъщност това е NLS_NUMERIC_CHARACTERS параметър, който определя кой знак се използва за знака за основа. Въпреки това, промяна на NLS_TERRITORY параметърът имплицитно променя NLS_NUMERIC_CHARACTERS параметър. Можете също така изрично да актуализирате NLS_NUMERIC_CHARACTERS параметър, ако предпочитате, в този случай вашият NLS_TERRITORY параметърът ще остане непроменен.
Вижте списък с елементи за формат на дата и час в Oracle за пълен списък с елементи на формат, които могат да се използват за форматиране на стойности за дата и час.