DEV Community

Rafaela Carvalho
Rafaela Carvalho

Posted on

Trabalhando com Datas em SQL: Funções Úteis e Exemplos

Olá a todos! Hoje, vamos falar sobre um tópico essencial em SQL - a manipulação de datas. Quer você esteja calculando a diferença entre duas datas ou extraindo partes específicas de uma data, é importante entender como trabalhar com datas em SQL.

1. Introdução à Manipulação de Datas

Datas e horas são informações cruciais em muitos conjuntos de dados. Em SQL, temos várias funções para nos ajudar a trabalhar com esses tipos de dados, seja para calcular intervalos, extrair componentes específicos ou formatar a apresentação da data e da hora.

2. Funções de Data Comuns

Vamos explorar algumas das funções mais comuns para trabalhar com datas em SQL.

  • GETDATE(): Retorna a data e hora atuais.
  • DATEDIFF(): Calcula a diferença entre duas datas.
  • DATEADD(): Adiciona um intervalo especificado a uma data.
  • YEAR(), MONTH(), DAY(): Extrai o ano, o mês e o dia de uma data, respectivamente.

Por exemplo, para extrair o ano de uma coluna 'DataNascimento', você usaria:

SELECT YEAR(DataNascimento) FROM Tabela;
Enter fullscreen mode Exit fullscreen mode

3. Exemplos de Uso

Agora vamos ver alguns exemplos de como essas funções podem ser aplicadas em situações do mundo real.

Suponha que você queira calcular a idade de alguém a partir da sua data de nascimento. Você poderia fazer isso usando DATEDIFF e GETDATE:

SELECT DATEDIFF(YEAR, DataNascimento, GETDATE()) AS Idade FROM Tabela;
Enter fullscreen mode Exit fullscreen mode

Ou talvez você queira encontrar todos os registros criados no mês passado. Você poderia usar DATEADD e GETDATE para isso:

SELECT * FROM Tabela WHERE MONTH(DataCriacao) = MONTH(DATEADD(MONTH, -1, GETDATE()));
Enter fullscreen mode Exit fullscreen mode

Compreender e dominar as funções de data em SQL é um recurso valioso para qualquer profissional que trabalhe com bases de dados. Continue praticando, experimentando e aprendendo, e logo você estará manipulando datas com facilidade. Até a próxima!

Top comments (0)