Når du bruger Oracle Database, kan du bruge TO_CHAR(datetime)
funktion til at returnere forskellige dele af en datetime-værdi, inklusive brøksekunder.
For at returnere brøkdelen af sekunder fra en datetime-værdi, skal du bruge FF
formatelement.
Eksempel
Her er et eksempel til demonstration:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF')
FROM DUAL;
Resultat:
123456789
Det er også muligt at begrænse præcisionen ved at tilføje et tal til FF
del:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF5')
FROM DUAL;
Resultat:
12345
Nummeret kan være 1
til 9
.
Sæt sekunddelen foran
I ovenstående eksempler returnerede jeg kun brøkdelen af sekunder og intet andet.
Vi kan inkludere sekunddelen såvel som brøksekunderne. For at gøre dette skal du bruge SS
. Vi kan også bruge X
for at angive radix-tegnet (det symbol, der bruges til at adskille heltalsdelen fra brøkdelen):
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL;
Resultat:
37,123456789
Mens du udtrykkeligt kunne angive dit eget radix-karakter – for eksempel et punktum (.
), X
formatelement kan være nyttigt til portering på tværs af forskellige sprog/territorier.
Da jeg kørte ovenstående eksempler, min NLS_TERRITORY
parameter blev sat til AUSTRALIA
, hvilket resulterede i, at radix-karakteren var et punktum.
Her er, hvad der sker, når jeg ændrer min NLS_TERRITORY
parameter til GERMANY
:
ALTER SESSION SET NLS_TERRITORY = 'GERMANY';
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL;
Resultat:
37,123456789
Nu er radix-tegnet et komma.
Det er faktisk NLS_NUMERIC_CHARACTERS
parameter, der angiver, hvilket tegn der bruges til radix-tegnet. Ændring af NLS_TERRITORY
parameter ændrer implicit NLS_NUMERIC_CHARACTERS
parameter. Du kan også eksplicit opdatere NLS_NUMERIC_CHARACTERS
parameter, hvis du foretrækker det, i hvilket tilfælde din NLS_TERRITORY
parameter forbliver uændret.
Se Liste over DateTime Format Elements i Oracle for en komplet liste over formatelementer, der kan bruges til at formatere datetime-værdier.