Ao usar o datediff, podemos estar cientes da próxima data, datas anteriores e similares é o caso de dias e semanas. Este artigo é baseado em algum uso básico dessa função e o leva às diferenças de semanas e meses. Você precisa instalar o PostgreSQL com o banco de dados no estado de trabalho. Podemos aplicar esses comandos em pgadmin e no psql também. Aqui escolhemos o PSQL para a realização desta função.
Vamos começar com a sintaxe da função datediff que usaremos mais adiante no artigo.
# selecione DATDEFF function () Date1, intervalo Date2;Intervalo é a diferença entre as duas datas que fornecemos no comando.
Função agora ()
Agora, movendo -se em direção à primeira e acima de tudo da função datediff. É uma função agora (). Tudo o que você precisa é escrever, e ele fará o resto na recuperação da data e da hora atual de escrever o comando.
>> selecione agora ();Este comando dá a data e a hora com segundos e os detalhes dos registros de data e hora com o fuso horário.
Função “hora atual do dia”
A hora, data e dia atuais são conhecidos usando esta função aqui.
>> selecione TimeOfday ();A função do trimestre ()
Um ano contém 3 quartos nele. A partir do comando atual, conhecemos a parte do trimestre da data atual. Como hoje é 30 de agosto, significa que a data atual estará no 3º trimestre.
>> selecione Extract (trimestre a partir de agora ());A nova peça determinará a data e a função restante calculará a parte do trimestre.
Dias se passaram até agora
Esta função extrai o número de dias que passaram até agora de acordo com a data atual. O 'DOY' calculará o dia atual a partir da função agora () e exibirá como uma saída.
>> Selecione Extrato (Doy a partir de agora ());Dia atual da semana
Também podemos calcular o número do dia atual na semana. A função funciona para extrair os dados do sistema, o que já foi feito até a função () para saber o dia atual da semana. Por exemplo, se for segunda -feira, o número do dia será 1, 2 para terça -feira, e assim por diante. O número do dia de domingo é definido como '0' por padrão pelo sistema.
>> Selecione Extrato (Dow a partir de agora ());Agora também temos uma alternativa para os cálculos desses dias/meses. Por exemplo, podemos substituir 'Extrair' por 'date_part'. O comando funciona da mesma forma, e o resultado pode ser comparado com os exemplos acima. Podemos implementar todos os exemplos anteriores com esta palavra -chave também.
>> selecione Date_Part ('Doy', agora ());Então esses foram alguns exemplos básicos. Agora vamos nos mudar para as funções datediff e veremos que está funcionando.
diferença de anos
A diferença entre dois anos específicos pode ser calculada usando a palavra -chave "date_part". Mas a sintaxe é bem diferente de outros exemplos. Date_Part é usado porque ocorre um erro se usarmos diretamente o "datdiff" no comando. Você precisa entrar na palavra -chave 'ano' no comando, seguindo a data atual ou a que você deseja fazer a diferença. Depois do operador menos, use a outra data que deve ser subtraída.
>> Selecione Date_Part ('Ano', '2021/04/01' :: Date) - Date_Part ('Ano', '1995/07/01' :: Date);A diferença total do ano é 26.
diferença de dias
Ao contrário dos anteriores, este exemplo usou o registro de data e hora para calcular os dias entre duas datas com o tempo.
>> Selecione '2020-03-28 2:06:00' :: Timestamp-'2005-07-26 06:15:00' :: Timestamp;O valor resultante exibe os dias totais e também a diferença no tempo. A diferença entre o tempo é calculada quando a diferença entre dois dias é conhecida através dos registros de data e hora na forma de dias. Nesse dia em particular, o tempo é calculado. Este cálculo é feito em formato 24 horas.
diferença de horas
Para determinar a diferença entre as horas, precisamos calculá -lo através de datas com um tempo de data e hora. Para levar horas como saída, multiplicaremos o valor por 24 e adicionaremos o valor com o resultante de todos os cálculos.
>> Selecione Date_Part ('Dia', '2021-09-22 04:05' :: Timestamp-'2000-09-2 03:14' :: Timestamp) * 24+ Date_Part ('hora', '2020-07 -28 07:55 ':: Timestamp-' 2020-07-28 08:05 ':: Timestamp);Portanto, o resultado exibe o valor em horas.
meados do mês
Isso pode ser obtido subtraindo o número de 17 números
.
Datediff usando uma tabela em PostgreSQL
Até agora, passamos por meio do básico da diferenciação de data e alguns exemplos de datediff também. Mas agora, essa parte é de alguma forma extensa, pois inclui o envolvimento da tabela no banco de dados.
Crie a tabela "Baby" usando o comando CREATE DADO. A tabela contém os dados de uma criança. Tomamos duas datas na forma de birth_date e descarregamento_date.
Depois de criar a tabela, insira os dados usando a consulta de inserção que você pode ver na imagem anexada aqui.
Voltando ao tópico, pois estamos tentando obter a diferença nas datas, calcularemos a idade do bebê usando uma única entrada 'nascer -birth_date', valor da coluna da tabela.
>> Selecione ID, First_Name, Last_Name, Age (BIRNHT_DATE) do bebê;Esta consulta criará outra coluna, 'Age', para calcular a idade, tomando as datas de cada criança. A idade é um método de cálculo interno no PostgreSQL. A diferença é calculada a partir da data atual até a idade fornecida na tabela.
Movendo -se em direção a outro semelhante, mas diferente ao receber informações para a função de idade. Aqui usamos o birth_date e o descarregamento como a entrada. Todas as outras coisas permanecem as mesmas no comando
>> Selecione ID, First_Name, Last_Name, Age (descarregamento_date, birt_date) do bebê;Você pode observar o resultado da imagem fornecida.
Conclusão
Datediff é uma maneira significativa de obter a história de qualquer tarefa ou pessoa. Não é usado diretamente, mas tem muitos sabores para usar com idade, meses, ano e segundo, etc., a ser calculado. Este artigo lança luz sobre cada aspecto do datediff PostgreSQL.