Когато използвате 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 за пълен списък с елементи на формат, които могат да се използват за форматиране на стойности за дата и час.