osk 0 Denunciar post Postado Outubro 19, 2011 Tenho uma data no meu db, e preciso mostrar essa data 3 meses antes dela vencer. Então fiz assim: SELECT * FROM filiados WHERE MONTH(cpdValidade) = MOD(MONTH(CURDATE()), 3) Só que agora também preciso mostrar 2 meses antes, 1 mês antes e se for o mesmo mês mostra também. Até tentei, mas não funcionou: SELECT * FROM filiados WHERE MONTH(cpdValidade) = MOD(MONTH(CURDATE()), 3) OR MONTH(cpdValidade) = MOD(MONTH(CURDATE()), 2) OR MONTH(cpdValidade) = MOD(MONTH(CURDATE()), 1) Tem outra forma de resolver isso? Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Outubro 19, 2011 só é para pegar se for exatamente o dia que falta para a data limite tipo 1/1/2012 pegaria apenas em 1/10/2011 OU 1/11/2011 OU 1/12/2011 ? Ou é para pegar em um intervalo? Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Outubro 19, 2011 Eu preciso sempre comparar o mês e ano ou seja 1/1/2012 tenho que mostrar que faltam 3 meses para chegar nesta data depois que faltam 2 falta 1. Mas o dia não me interessa. Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Outubro 19, 2011 então voce deve pegar periodos, ou seja intervalos em vez de usar = em sua query Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Outubro 19, 2011 Seria usando então BETWEEN? Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Outubro 19, 2011 pode ser com BETWEEN Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Outubro 19, 2011 Mário, consegui resolver desta forma: SELECT * FROM filiados WHERE MONTH(cpdValidade) = MOD(MONTH(CURDATE()), 3) OR MONTH(cpdValidade) = MONTH(CURDATE()) + 2 OR MONTH(cpdValidade) = MONTH(CURDATE()) + 1 OR MONTH(cpdValidade) = MONTH(CURDATE()) Tem alguma problema em ser assim? Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Outubro 19, 2011 Pela query não entendi exatamente o quer mas se resolveu está ótimo Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Outubro 19, 2011 beleza então vlw... Compartilhar este post Link para o post Compartilhar em outros sites