Paulo Negreiros Postado Junho 6, 2009 Denunciar Share Postado Junho 6, 2009 Olá tenho a seguinte tabelaAno Mês2007 setembro2007 Maio2007 Junho2007 Julho2007 Agosto2007 Abril2009 maio2009 junho2009 abrilcomo ordenar os meses na sequencia correta dos anos? Link para o comentário Compartilhar em outros sites More sharing options...
0 Pompeu Postado Junho 6, 2009 Denunciar Share Postado Junho 6, 2009 Tenta issoSELECT * FROM nomedatabelaORDER BY mes, ano Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcus Nunes Postado Junho 6, 2009 Denunciar Share Postado Junho 6, 2009 (editado) ORDER BY ano ASC, mes ASCTroque os dados do campo "mes" pelo número deles, caso contrário a ordenação vai vir em ordem alfabética. Editado Junho 7, 2009 por Marcus Nunes Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Junho 6, 2009 Denunciar Share Postado Junho 6, 2009 Oi, Paulo.Vamos por partes: O Pompeu te informou istoSELECT * FROM nomedatabelaORDER BY mes, anomas o mes está invertido com o ano. O correto seria assimSELECT * FROM nomedatabela ORDER BY ano, mes .Mas ainda está errado, pois como disse o Marcus NunesORDER BY ano ASC, mes ASC Troque os dados do campo "mes" pelo números deles, caso contrário a ordenação vai vir em ordem alfabética. Como você já deve ter cadastrado como extenso não há a necessidade de trocar o campo mes de string para numérico. Basta usar a função FIELD (mais informações sobre esta e outras funções consulte o manual do MySQL) Como o ASC é padrão não há a necessidade de informar que a ordenação será ascendente. A consuta correta ficará assim:SELECT ano, mes FROM nomedatabela ORDER BY ano, FIELD(mes, 'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outrubro', 'Novembro', 'Dezembro'); Link para o comentário Compartilhar em outros sites More sharing options...
0 Paulo Negreiros Postado Junho 6, 2009 Autor Denunciar Share Postado Junho 6, 2009 Olá pessoal,muito obrigado a todos, onsegui reslver o problema, com o código enviado por Denis Coursy,SELECT ano, mes FROM nomedatabelaORDER BY ano, FIELD(mes, 'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outrubro', 'Novembro', 'Dezembro');no inicio deu esse erro: syntax to use near 'LIMIT 0, 10' at line 1dai alterei o código do php para: syntax to use near 'LIMIT "0", "10" at line 1 ai td fuincionou corretamente.Um abraços a todos e muito obrigad. Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Paulo Negreiros
Olá tenho a seguinte tabela
Ano Mês
2007 setembro
2007 Maio
2007 Junho
2007 Julho
2007 Agosto
2007 Abril
2009 maio
2009 junho
2009 abril
como ordenar os meses na sequencia correta dos anos?
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados