PostgreSQL DATE
As funções de data do PostgreSQL são usadas para manipular e extrair informações de valores de data e hora, especificamente aqueles de tipos como date
, timestamp
e interval
. Essas funções ajudam a realizar operações como cálculo de intervalos, extração de partes de uma data e formatação de datas.
Uso
As funções de data no PostgreSQL são utilizadas quando você precisa realizar cálculos ou extrair componentes específicos de dados de data e hora. Eles são essenciais para tarefas como relatórios, agendamento e análise de dados com base no tempo.
SELECT function_name(date_column)
FROM table_name;
Nessa sintaxe, function_name
representa uma função de data específica aplicada a date_column
para realizar a operação desejada.
Exemplos
1. Extraindo o ano
SELECT EXTRACT(YEAR FROM order_date) AS order_year
FROM orders;
Este exemplo usa a função EXTRACT
com a sintaxe EXTRACT(field FROM source)
para recuperar o componente ano da coluna order_date
, retornando-o como order_year
. EXTRACT
também pode ser usado para outros componentes, como mês, dia, hora etc.
2. Adicionando dias a uma data
SELECT order_date + INTERVAL '10 days' AS new_date
FROM orders;
Essa sintaxe demonstra como adicionar 10 dias a cada order_date
, resultando em uma nova data chamada new_date
. Aqui, INTERVAL
é um tipo de dados específico usado para lidar com intervalos de tempo.
3. Cálculo de diferenças de datas
SELECT age(delivery_date, order_date) AS delivery_duration
FROM orders;
Aqui, a função age
calcula a diferença entre delivery_date
e order_date
, retornando a duração como delivery_duration
. Observe que AGE
retorna um formato de intervalo, que pode precisar de conversão para exibição ou cálculos adicionais.
Dicas e práticas recomendadas
- Use as funções apropriadas. Escolha a função de data correta com base na operação específica que você precisa realizar, como
AGE
para diferenças ouEXTRACT
para peças. - Formate as datas para facilitar a leitura. Use funções como
TO_CHAR
para converter datas em formatos legíveis por humanos quando necessário. - Otimizar os cálculos de data. Aproveite as colunas de data indexadas para fazer consultas mais rápidas, especialmente ao filtrar ou unir tabelas.
- Tenha em mente os fusos horários. Ao trabalhar com carimbos de data e hora, certifique-se de que você considera os fusos horários para evitar discrepâncias, usando funções como
AT TIME ZONE
. - Lidar com anos bissextos e horário de verão. Leve isso em conta nos cálculos para garantir a precisão.
- Use
date_trunc
para truncar datas. Essa função é útil para agrupar datas por mês, trimestre, etc.
Funções adicionais de data
NOW()
: Retorna a data e a hora atuais.CURRENT_DATE
: Retorna a data atual.JUSTIFY_DAYS
: Ajusta os intervalos para normalizar dias e meses.
Essas e outras funções aumentam a versatilidade da manipulação de data e hora no PostgreSQL, permitindo a análise e o gerenciamento abrangentes de dados.