Ao usar o Oracle Database, você pode usar o
TO_CHAR(datetime)
função para retornar várias partes de um valor de data e hora, incluindo os segundos fracionários. Para retornar a parte segundos fracionários de um valor datetime, use o
FF
elemento de formato. Exemplo
Segue um exemplo para demonstrar:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF')
FROM DUAL;
Resultado:
123456789
Também é possível limitar a precisão anexando um número ao
FF
papel:SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF5')
FROM DUAL;
Resultado:
12345
O número pode ser
1
até 9
. Prepare a parte dos segundos
Nos exemplos acima, retornei apenas a parte dos segundos fracionários e nada mais.
Podemos incluir a parte dos segundos, bem como os segundos fracionários. Para fazer isso, use o
SS
. Também podemos usar X
para especificar o caractere radix (o símbolo usado para separar a parte inteira da parte fracionária):SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL;
Resultado:
37.123456789
Embora você possa fornecer explicitamente seu próprio caractere de base – por exemplo, um ponto final (
.
), o X
O elemento de formato pode ser útil para portar entre diferentes idiomas/territórios. Quando executei os exemplos acima, meu
NLS_TERRITORY
parâmetro foi definido como AUSTRALIA
, o que resultou no caractere radix sendo um ponto final. Veja o que acontece quando eu mudo meu
NLS_TERRITORY
parâmetro para GERMANY
:ALTER SESSION SET NLS_TERRITORY = 'GERMANY';
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL;
Resultado:
37,123456789
Agora o caractere radix é uma vírgula.
Na verdade, é o
NLS_NUMERIC_CHARACTERS
parâmetro que especifica qual caractere é usado para o caractere radix. No entanto, alterar o NLS_TERRITORY
parâmetro altera implicitamente o NLS_NUMERIC_CHARACTERS
parâmetro. Você também pode atualizar explicitamente o NLS_NUMERIC_CHARACTERS
se preferir, nesse caso seu NLS_TERRITORY
parâmetro permanecerá inalterado. Consulte Lista de elementos de formato de data e hora no Oracle para obter uma lista completa de elementos de formato que podem ser usados para formatar valores de data e hora.