blackmind 1 Denunciar post Postado Setembro 30, 2009 opa, beleza? pessoal seguinte, no mysql 4 eu consigo realizar essa query, ja no 5 nao, o erro esta no % alguem pode me ajudar ? ESSA NAO FUNCIONA ( ... 2009-12-%) SELECT data, date_format(data, '%m') as mes, date_format(data, '%Y') as ano FROM diario_trabalho WHERE id_vaga = '11' and id_usuario = '1' and data BETWEEN '2009-01-01' AND ('2009-12-%') ESSA FUNCIONA ( ... 2009-12-1) so que o valor da data nao pode ser fixo SELECT data, date_format(data, '%m') as mes, date_format(data, '%Y') as ano FROM diario_trabalho WHERE id_vaga = '11' and id_usuario = '1' and data BETWEEN '2009-01-01' AND ('2009-12-1') Abra;o Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Setembro 30, 2009 pretende filtrar os dados cuja data esteja entre 1 de janeiro de 2009 e 1 de dezembro de 2009 ? Compartilhar este post Link para o post Compartilhar em outros sites
blackmind 1 Denunciar post Postado Setembro 30, 2009 pretende filtrar os dados cuja data esteja entre 1 de janeiro de 2009 e 1 de dezembro de 2009 ? pretendo filtrar os dados de janeiro de 2009 a dezembro de 2009 os dias sao irelevantes Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Setembro 30, 2009 exemplo SELECT Fields FROM TableName WHERE YEAR( TargetField ) = 2009 AND MONTH( TargetField ) BETWEEN 7 AND 8 para o seu caso: BETWEEN 1 AND 11 retornará tudo que esteja a partir de 1 de janeiro até 30 de novembro Compartilhar este post Link para o post Compartilhar em outros sites
blackmind 1 Denunciar post Postado Outubro 1, 2009 exemplo SELECT Fields FROM TableName WHERE YEAR( TargetField ) = 2009 AND MONTH( TargetField ) BETWEEN 7 AND 8 para o seu caso: BETWEEN 1 AND 11 retornará tudo que esteja a partir de 1 de janeiro até 30 de novembro Opa beleza? Entao amigo quase resolveu, mas deu 1 problema na sua condicao, tive que colocar 1 BETWEEN o ano, ai complicou minha query fico assim SELECT data, date_format(data, '%m') as mes, date_format(data, '%Y') as ano FROM diario_trabalho WHERE YEAR( data ) BETWEEN 2006 and 2009 AND MONTH( data ) BETWEEN 1 AND 3 GROUP by mes, ano order by data desc repare que eu quero TODOS os registro de de JANEIRO 2006 a MARCO 2009, so que ele so me lista os 3 primeiros de 2006,2007,2008,2009 se tiver 1 forma mais facil agradeco, abraco Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Outubro 1, 2009 SELECT data, date_format(data, '%m') as mes, date_format(data, '%Y') as ano FROM diario_trabalho WHERE (YEAR( data ) BETWEEN 2006 and 2008 AND MONTH( data ) BETWEEN 1 AND 12) OR (YEAR( data ) = 2009 AND MONTH( data ) BETWEEN 1 AND 3) GROUP by mes, ano order by data desc []'s Compartilhar este post Link para o post Compartilhar em outros sites