Existe uma maneira de subtrair uma quantidade de dias de uma data no SQL?
Pergunta
Conheço o datediff (D, Date1, Date2), mas não pretendo subtrair duas datas, mas uma quantidade de dias a partir de uma data.
Por exemplo:
"2010-04-13" - 4 = "2010-04-09"
Isso é possível com o MySQL?
Solução
date_sub (data, intervalo de 4 dias);
Outras dicas
Sim. Ver http://dev.mysql.com/doc/refman/5.1/en/date-and time-functions.html#function_addate
SELECT DATE_ADD('2008-01-02', 31);
Resulta em:
'2008-02-02'
Para subtrair, basta usar um número negativo ou usar DATE_SUB
Isso subtrairá 2 dias de uma data em uma tabela e mostrará as duas datas.
SELECT
[Date]
,DATEADD(DAY, -2, [Date]) AS [NewDate]
FROM
[YourTable]
sim. O MySQL tem muitas funções de data. Apenas Google mysql datetime functions
E você receberá a lista. Data de subtração entre eles
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow