marcoscgr 0 Denunciar post Postado Agosto 31, 2012 E ai moçada, eu tenho uma tabela X, eu não estou conseguindo montar uma consulta que pegue pelo menos os 12 ultimos meses. Por exemplo, eu tenho lançado do dia 01/01/2010 até o dia 01/08/2012. Digamos que eu queira consultar os 12 ultimos meses a partir do dia 01/01/2011, beleza, eu consigo fazer um select que me traga sempre os ultimos 12 meses a partir de uma data, é só usar WHERE igpm_data < '2011-01-01' ORDER BY igpm_data ASC LIMIT 12 Ele irá me trazer os ultimos 12 meses a partir do mes solicitado. Mas o problema é, como eu só tenho cadastrado na tabela um período até 01/01/2010 entao se eu fizer a seguinte consulta WHERE igpm_data < '2010-05-07' ORDER BY igpm_data ASC LIMIT 12 Ele irá me retornar 5 meses, óbvio. O que eu quero é criar uma consulta que sempre retorne os 12 últimos valores da tabela, entao se eu consultar qualquer valor que fique abaixo dos 12 meses, eu gostaria que ele me trouxesse ainda assim sempre os últimos 12 meses. Então se eu consultasse a data usada no sql acima (07/05/2010) eu gostaria que ele me retornasse os 12 últimos valores, ou seja, de mês 01/01/2010 até 01/12/2010 Não sei se consegui ser claro quanto à minha dúvida.... Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 31, 2012 Veja se isto ajuda. Compartilhar este post Link para o post Compartilhar em outros sites
marcoscgr 0 Denunciar post Postado Agosto 31, 2012 Valeu mano, eu dei uma olhada por cima, mas eu já havia resolvido, não sei se é gambiarra o que eu fiz, mas eu fiz um select para pegar o valor minimo e o máximo, trato isso no php e depois jogo em outro select que irá me retonar o resultado que eu quero. SELECT igpm_data AS minData, (SELECT MAX(igpm_data) FROM igpm WHERE 1 LIMIT 1) AS maxData FROM igpm WHERE igpm_id >= 1 ORDER BY igpm_data ASC LIMIT 11 , 1 O limit 11,1 é para pegar justamente o décimo segundo elemento. Então se os valores forem maiores ou menores que o mínimo ou o máximo, eu substituo e insiro isso na outra consulta q me traz o resultado que eu desejo. Mas valeu a ajuda.... Compartilhar este post Link para o post Compartilhar em outros sites