Tchello Postado Janeiro 3, 2012 Denunciar Share Postado Janeiro 3, 2012 Preciso executar esta query:SELECT MONTH(data), YEAR(data) FROM tabelaWHERE data IS NOT NULL GROUP BY MONTH(data)ORDER BY data DESCPara que me liste:01/201212/201111/201110/201109/2011Mas dá erro:Column 'tabela.data' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Vinicius Schuh Postado Janeiro 3, 2012 Denunciar Share Postado Janeiro 3, 2012 (editado) Boa Tarde Tchello, acrescente no group by também a cláusula YEAR(Data)Ex: SELECT MONTH(Data) As Mes, YEAR(Data) As Ano FROM Tabela GROUP BY MONTH(Data), YEAR(Data) ORDER BY MONTH(Data), YEAR(Data)OBS: Dessa forma ira retornar duas colunas, uma com os valores do MES e outra com os valores do ANO.Espero ter ajudado. Até + Editado Janeiro 3, 2012 por Vinicius Schuh Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Tchello Postado Janeiro 3, 2012 Autor Denunciar Share Postado Janeiro 3, 2012 Já tentei assim, mas olha o resultado:1 20121 20112 20113 20114 20115 20116 20117 20118 20119 201110 201111 201112 2011Orderna o ano ok de forma decrescente, porém o mês fica crescente. E preciso que ordene ano e mês de forma descrescente como no modelo acima. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcelo_2 Postado Janeiro 4, 2012 Denunciar Share Postado Janeiro 4, 2012 (editado) ahe.. na verdade, assim n vai rolar nunca..porque 1 banco de dados só ordena pela 2ª coluna quando há "empate" (uma coincidencia) na 1ª..e c/ o group by esse empate não vai rolar, ok?se tiver 1 coluna chave primaria autonumerada (identity) ordena por ela desc q ai sim da beleza.. falou.. fui..obs: a ordem rola, não o group, ok? Editado Janeiro 4, 2012 por Marcelo_2 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Tchello Postado Janeiro 4, 2012 Autor Denunciar Share Postado Janeiro 4, 2012 Isso aí, xará... não tinha me atentado para a chave primaria... valeu... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Tchello
Preciso executar esta query:
SELECT MONTH(data), YEAR(data) FROM tabela
WHERE data IS NOT NULL GROUP BY MONTH(data)
ORDER BY data DESC
Para que me liste:
01/2012
12/2011
11/2011
10/2011
09/2011
Mas dá erro:
Column 'tabela.data' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.