SELECT POR MES

CSAPI 06/11/2012 15:40:50
#413619
Bom tarde pessoal,
Estou tentando fazer um select em mysql para filtrar alguns registro por mês.
Utilizei o seguinte argumento na pesquisa:

select campos from tabela where month(campo_data)=10 (para filtrar registros do mês de outubro)

Mas esta apresentando um erro.

Alguem poderia me ajudar a montar esse select.




MARCELO.TREZE 06/11/2012 16:01:42
#413622
Resposta escolhida
vamos lá qual o tipo do campo_data é date/time?

pois deveria funcionar assim

SELECT * FROM tabela WHERE MONTH(campo_data) = [ô]10[ô]

FEDERHEN 06/11/2012 16:24:10
#413629
Citação:

select campos from tabela where month(campo_data)=10



Deveria funcionar...
Testei a mesma sintaze aqui, e funcionou...

Que tal postar a mensagem de erro... As vezes ajuda em muito...
NETMANIA 06/11/2012 16:40:06
#413632
1º Qual é o banco de dados que você está utilizando
2º Qual é o tipo de campo que você está usando o comando?
MARCELO.TREZE 07/11/2012 07:51:31
#413672
CSAPI olhe acima no MYSQL o 10 deve ficar entre dois apostrofos ([ô]), ou seja qualquer consulta deve ser com apostrofo
FEDERHEN 07/11/2012 08:06:09
#413675
Quando o retorno é numérico não tem aspas e neste caso a função month retorna numérico.
MARCELO.TREZE 07/11/2012 08:24:31
#413679
ambos os casos são validos,no caso de numérico, ou seja com ou sem apóstrofos, o problema dele deve estar no tio do campo.
LEAO10 09/11/2012 13:23:46
#413901
Citação:

1º Qual é o banco de dados que você está utilizando
2º Qual é o tipo de campo que você está usando o comando



Respondendo estas questões ajudaria muito
FILMAN 10/11/2012 14:24:42
#413977
Se o campo_data for do tipo VARCHAR então converta para DATE

SELECT * FROM tabela WHERE MONTH(STR_TO_DATE(campo_data,[ô]%d/%m/%Y[ô])) = 10



Tente ai! qualquer duvida poste ai, caso continue dando erro poste para nós o tipo de campo que esta a data na tabela


Espero ter ajudado
Tópico encerrado , respostas não são mais permitidas