Mais
×

Como converter uma data juliana com SQL

Atualizado em 26 fevereiro, 2018

Embora a definição de uma data juliana seja complexa, o significado típico para aplicativos de computador é um formato de data com o ano seguido pelo seu dia numérico de três dígitos. Por exemplo, o equivalente juliano de 15 de fevereiro de 2005 é 05046. "05" são os dois últimos dígitos de 2005 e 15 de fevereiro é o 46º dia do ano. Muitos aplicativos usavam esse formato para facilitar as comparações e cálculos de datas. A Linguagem de Consulta Estruturada, ou SQL, utilizada para programação de banco de dados, não tem nenhum método interno para converter datas para o formato juliano, mas você pode criar facilmente uma função SQL que o faça.

Instruções

Você pode converter datas julianas em SQL com uma função (Thinkstock/Comstock/Getty Images)
  1. Abra uma sessão de banco de dados SQL usando o programa de consulta de texto do software de banco de dados.

  2. Digite as seguintes linhas de texto e execute-as:

    CREATE FUNCTION convert_julian_to_datetime(@julian_date char(5)) RETURNS datetime AS BEGIN RETURN (SELECT DATEADD(day, CONVERT(int,RIGHT(@julian_date,3)) - 1, CONVERT(datetime, LEFT(@julian_date,2) + '0101', 112))) END

  3. Especifique a função em um comando SQL subsequente. Passe a data juliana para a função como uma sequência de caracteres de texto entre duas aspas simples:

    Selecionar dbo.convert_julian_to_datetime('10001')

    oferecerá "2010-01-01 00:00:00.00". Essa é a data juliana convertida para o formato "datetime" do SQL padrão.

Dicas

  • Para remover a função de banco de dados, abra o programa de consulta de texto e digite:
  • DROP TABLE convert_julian_to_datetime.
Cite this Article A tool to create a citation to reference this article Cite this Article