Como converter tipos de dados Timestamp no Oracle SQL

A Oracle é líder de mercado em sistemas de banco de dados relacionais. DATE e TIMESTAMP são tipos de dados de data e hora integrados oferecidos pelo Oracle, usados ​​para datas e horas. Outros tipos de dados são TIMESTAMP COM FUSO HORÁRIO e TIME STAMP COM Fuso Horário Local. O tipo de dados DATE contém os valores de data e hora no formato mês, dia, ano, hora, minutos e segundos, enquanto TIMESTAMP se aprofunda nos detalhes com frações de segundos, TIMEZONE_HOUR, TIMEZONE_MINUTES, TIMEZONE_REGION e TIMEZONE_ABBR. As funções fornecidas no Oracle convertem os tipos de dados de data e hora em outros tipos de dados.

Passo 1

Use a função “TO_DATE ()” para converter uma seqüência de caracteres no tipo de dados DATE. A sintaxe em sua forma mais simples é a seguinte:

TO_DATE (string_value)

O string_value é o conjunto de caracteres que você deseja converter para o formato padrão do tipo de dados DATE. Você também deve especificar uma máscara de formato, caso a cadeia de caracteres não esteja no formato padrão. Por exemplo:

TO_DATE (’01-Set-2010 ‘)

Isso fornece o seguinte resultado:

01-SEP-10

Especifique o formato se o valor da sequência não estiver no formato padrão da seguinte maneira:

TO_DATE (‘20100901’, ‘AAAAMMDD’)

Isso fornece o seguinte resultado: 01-SEP-10

Etapa 2

Use a função “TO_CHAR ()” para converter um valor de qualquer tipo de dados em uma cadeia de caracteres. Por exemplo, se você deseja usar esta função para converter um valor do tipo de dados DATE em caracteres, a sintaxe da função é a seguinte:

TO_CHAR (valor_data, ‘modelo_formato’)

date_value representa qualquer valor do tipo de dados DATE e o ‘format_model’ especifica o padrão no qual date_value é interpretado. Por exemplo:

TO_CHAR (‘20100901’, ‘MM / AA’)

Isso fornece o seguinte resultado:

10/09

Etapa 3

Use a função “FROM_TZ ()” para converter um valor de tipo de dados TIMESTAMP em um valor de tipo de dados TIMESTAMP WITH TIME ZONE se o fuso horário for exibido. Conseqüentemente, a função terá o valor TIMESTAMP e o valor do fuso horário como seus parâmetros. O valor do fuso horário é a sequência de formato TZH: TZM, que representa o fuso horário e o fuso horário em minutos, respectivamente. Por exemplo:

FROM_TZ (TIMESTAMP ‘2010-01-09 10:00:00’, ‘5:00’)

Isso fornece o seguinte resultado:

01-SEP-10 10: 00: 000000 AM + 05: 00

Etapa 4

Use a função “TO_TIMESTAMP ()” para converter uma seqüência de caracteres no tipo de dados TIMESTAMP. A função em sua forma mais simples utiliza o valor_de_string, necessário para converter em um valor do tipo de dados TIMESTAMP. A sintaxe é a seguinte:

TO_TIMESTAMP (string)

A sequência representa o valor que você deseja converter para o tipo de dados TIMESTAMP no formato padrão. É semelhante à função “TO_DATE ()”. Se o valor da sequência não estiver no formato padrão, é necessário especificar um modelo de formato. Por exemplo:

TO_TIMESTAMP (‘20100901’, ‘AAAA-MM-DD HH: MI: SS’)

O comando acima converte a data no tipo de dados TIMESTAMP com o seguinte resultado:

01-Set-10 6.34.00.000000000 AM

Etapa 5

Use “TO_TIMESTAMP_TZ ()” para converter uma cadeia de caracteres em um valor do tipo de dados TIMESTAMP WITH TIME ZONE. É semelhante à função “TO_TIMESTAMP ()”. A função assume o valor da sequência que precisa ser convertida. A sintaxe em sua forma mais simples é a seguinte:

TO_TIMESTAMP_TZ (string)

Por exemplo:

TO_TIMESTAMP_TZ (‘2010-01-08 5:00:00 -8: 00’, ‘AAAA / MM / DD HH: MI: SS TZH: TZM’)

Isso fornece o seguinte resultado:

01-Set-10 5:00:00 000000000 -8: 00

Etapa 6

Use “CAST ()” para converter um tipo de dados integrado em outro tipo de dados. A sintaxe da função usa uma expressão e o tipo de tipo de dados que precisa ser convertido. Por exemplo, se você converter o tipo de dados DATE para o tipo de dados TTIMESTAM, a sintaxe da função é a seguinte:

CAST (string_value AS data_type)

Por exemplo, se você deseja converter o valor da data do seu computador em um valor do tipo de dados TIMESTAMP, digite o seguinte comando:

CAST (sysdate AS TIMESTAMP)

Isso fornece o seguinte resultado:

01-SEP-10 08.34.23.000000 AM

Referências

 

Você pode estar interessado:

Deixe um comentário