21 de jun. de 2023

Funções do MySQL que você precisa conhecer #2: DATE_ADD()

Fala Fera!

Hoje vamos falar de uma função que tive que usar recentemente no meu trabalho: a função DATE_ADD().

Essa função do MySQL é usada para adicionar uma quantidade específica de tempo a uma data. Ela permite adicionar anos, meses, dias, horas, minutos e segundos a uma data existente.

Esta é a sintaxe básica da função DATE_ADD():

SQL
DATE_ADD(data, INTERVAL quantidade_tipo);


O parâmetro "data" representa a data à qual você deseja adicionar tempo, e o parâmetro "quantidade_tipo" especifica a quantidade de tempo e o tipo de unidade que você deseja adicionar.

Os tipos de unidade que podem ser usados com a função DATE_ADD() incluem:
  • "YEAR" (anos)
  • "MONTH" (meses)
  • "DAY" (dias)
  • "HOUR" (horas)
  • "MINUTE" (minutos)
  • "SECOND" (segundos)
Exemplo 1: Adicionando dias a uma data
 
SQL
SELECT DATE_ADD('2023-06-14',INTERVAL 3 DAY);

Neste exemplo, a função DATE_ADD() é usada para adicionar 3 dias à data '2023-06-14'. O resultado será '2023-06-17'.

Exemplo 2: Adicionando horas e minutos a uma data.
 
SQL
SELECT DATE_ADD('2023-06-14 10:00:00',INTERVAL '2:50' HOUR_MINUTE);

Neste exemplo, a função DATE_ADD() é usada para adicionar 2 horas e 50 minutos à data e hora '2023-06-14 10:00:00'. O resultado será '2023-06-14 12:50:00'.

Você também pode usar a função DATE_ADD() em procedimentos e funções personalizadas no MySQL. Aqui está um exemplo de como criar uma função personalizada que adiciona um número específico de dias a uma data:
 
SQL
DELIMITER $$

CREATE FUNCTION adiciona_dias(data_inicial DATE, quantidade_dias INT) RETURNS DATE
BEGIN
    DECLARE data_final DATE;
    SET data_final = DATE_ADD(data_inicial, INTERVAL quantidade_dias DAY);
    RETURN data_final;
END $$

DELIMITER ;

Neste exemplo, a função AddDays é criada com dois parâmetros: data_inicial e quantidade_dias. A função utiliza a função DATE_ADD() para adicionar a quantidade especificada de dias à data inicial fornecida. O resultado é armazenado na variável data_final e é retornado pela função.

Você pode chamar essa função personalizada em uma consulta SQL, por exemplo:
 
SQL
SELECT adiciona_dias('2023-02-07',20);

Este comando irá retornar a data '2023-02-27', pois a data inicial '2023-02-07' é aumentada em 20 dias.

Essa função me auxiliou muito no meu trabalho, pois precisava indicar quando um link iria vencer, e para isso fiz uso dela e funcionou perfeitamente.

Já conhece meu canal no YouTube? Clique aqui e aprenda ainda mais conteúdos sobre bancos da dados.

Nenhum comentário:

Postar um comentário