Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Ordenar dados


Paulo Negreiros

Pergunta

4 respostass a esta questão

Posts Recomendados

  • 0

Oi, Paulo.

Vamos por partes: O Pompeu te informou isto

SELECT * FROM nomedatabela

ORDER BY mes, ano

mas o mes está invertido com o ano.

O correto seria assim

SELECT * FROM nomedatabela
ORDER BY ano, mes
.Mas ainda está errado, pois como disse o Marcus Nunes
ORDER 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

  • 0

Olá pessoal,

muito obrigado a todos, onsegui reslver o problema, com o código enviado por Denis Coursy,

SELECT ano, mes

FROM nomedatabela

ORDER 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 1

dai 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

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...