Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal boa tarde,
Minha cabeça fechou curto circuito hoje
estou precisando fazer um select para retornar registros que sejam menores de 120 dias de uma determinada data.
exemplo:
SELECT * FROM tabela where data_baixa+120 dias > CURDATE()
Ou seja preciso retornar apenas os registros onde o campo data_baixa + 120 dias é maior que a data atual, eliminando assim no select registro antigos com mais de 120 dias. Meu campo é tipo date: yyyy-mm-dd.pelo exemplo ai acima usei assim:
mysql_query("SELECT * FROM cad_venda WHERE DATE_ADD(data_baixa,INTERVAL 4 MONTH) > CURDATE()")
mas continua mostrando arquivos com mais de 120 dias de baixados.
Alguma dica do que pode estar errado?
creio ser isto
SELECT *
FROM cad_venda
WHERE data_baixa > date_sub(CURDATE() ,INTERVAL 4 MONTH)
Utilizando a lógica do Motta.
SELECT *
FROM cad_venda
WHERE CURDATE() BETWEEN DATE_SUB(data_baixa ,INTERVAL 4 MONTH) AND data_baixa
https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_adddate