gmps 0 Denunciar post Postado Fevereiro 2, 2008 galera, eu tenho registros assim: 2008-02-02 2008-02-01 2008-01-29 2008-01-28 ... eu preciso fazer um select q pega a ultima data(que nesse ex q dei seria 2008-02-02) e pegue a primeira data do penultimo mes(que seria nesse exemplo 2008-01-28) quero listar os registros cadastrados esse mes e o mes passado, ordenados por data... vlw []´z Compartilhar este post Link para o post Compartilhar em outros sites
Marcio Leandro 0 Denunciar post Postado Fevereiro 2, 2008 Qual gerenciador de bancos de dados você utiliza? Compartilhar este post Link para o post Compartilhar em outros sites
gmps 0 Denunciar post Postado Fevereiro 2, 2008 mysql Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 2, 2008 Serão necessárias duas consultas. Para a maior data: Select max(data_hora) From tabela; Para a maior data do mês anterior select max(data_hora) from datas where month(data_hora) = month(curdate() - 1) Mais informações em: http://dev.mysql.com/doc/refman/5.1/en/dat...-functions.html Movido: PHP http://forum.imasters.com.br/public/style_emoticons/default/seta.gif MySQL Compartilhar este post Link para o post Compartilhar em outros sites
gmps 0 Denunciar post Postado Fevereiro 4, 2008 a data maior deu certo, mas pegar a menor data do mes anterior deu certo nao =/ Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 5, 2008 troque MAX() por MIN() Compartilhar este post Link para o post Compartilhar em outros sites
gmps 0 Denunciar post Postado Fevereiro 6, 2008 da certo nao... fiz: select min(data) from tabela where month(data) = month(curdate() - 1) e me devolveu: 2005-08-02 campo da tabela: data formato: date ( 0000-00-00 ) []´z Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 6, 2008 Errei no parênteses. Tente assim: select min(data_hora) from datas where month(data_hora) = (month(curdate()) - 1) Compartilhar este post Link para o post Compartilhar em outros sites
gmps 0 Denunciar post Postado Fevereiro 6, 2008 ainda nada... fiz: select min(data) from filmes where month(data) = (month(curdate()) - 1) and lancamento = 'sim' me devolveu: 2006-01-01 o campo da tabela se chama: data =/ Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 6, 2008 adicione outra condição: o ano do campo data deve ser igual ao ano corrente. Compartilhar este post Link para o post Compartilhar em outros sites
gmps 0 Denunciar post Postado Fevereiro 6, 2008 resolvido: select min(data) from tabela where month(data) = (month(curdate()) - 1) and lancamento = 'sim' and YEAR(data) = '2008'; :) vlw Compartilhar este post Link para o post Compartilhar em outros sites