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

(Resolvido) Order By


Eric Freitas

Pergunta

8 respostass a esta questão

Posts Recomendados

  • 0
  Eric Freitas disse:
como faço pra ordernar em ordem crecente ou decrecente?

No exemplo abaixo o campo 1 estará ordenado em forma ascendente automaticamente.

Select campo1, campo2, campo3

from minha tabela

order by campo1;

No exemplo abaixo o campo 1 estará ordenado em forma decrecendente.

Select campo1, campo2, campo3

from minha tabela

order by campo1 desc;

No exemplo abaixo o campo 1 estará ordenado em forma decrecendente e o campo2 estará ordenado de forma ascendente.

Select campo1, campo2, campo3

from minha tabela

order by campo1 desc, campo2 asc;

Como você pode ver a ordenação ascendente é default a variação para ascendente e decrescente pode ser obtida pelo uso dos sufixos asc e desc respectivamente

att Denis courcy

Link para o comentário
Compartilhar em outros sites

  • 0
  Eric Freitas disse:
mas o problema é o seguinte tenho em minha tabela o campo data q é composto pelo ano em que a ação foi comprada. eu coloco order by data e ele não fica na ordem asc.

então bem por cima meu select teria q ficar

select * from tabela order by data asc; correto?

E como é esse campo "data"?

Link para o comentário
Compartilhar em outros sites

  • 0
  Eric Freitas disse:
tentei "select * from tp_legislativa order by 'data' asc ;"

mas não deu certo. meu campo data é date - YYYY (só guarda ano)

Campos data, por default, no MySQL são armazenados na forma 'AAAA-MM-DD'.

Você usou alguma formatação especial?

Para guardar só o ano um campo numérico seria melhor.

att Denis Courcy

  Citar
select * from tabela order by data asc; correto?

Sim, Correto. Você estará forçando a ordenação ascendente.

att Denis Courcy

Link para o comentário
Compartilhar em outros sites

  • 0
  Eric Freitas disse:
usei sim! só ano.

daí o que acontece.

-> select * from tabela order by 'data' asc; incorreto

-> select * from tabela order by data asc; correto

a '' não ordenava corretamente gostaria de entender o porque... saberia me explicar?

Sim. Se data é o nome do campo, então ao passar 'data' você estava informando que ele deveria ordenar por uma string cujo conteúdo é 'data' e não pelo campo DATA que é o nome do campo de sua tabela.

Entendeu?

att

Denis Courcy

Link para o comentário
Compartilhar em outros sites

  • 0
  Denis Courcy disse:
  Eric Freitas disse:
usei sim! só ano.

daí o que acontece.

-> select * from tabela order by 'data' asc; incorreto

-> select * from tabela order by data asc; correto

a '' não ordenava corretamente gostaria de entender o porque... saberia me explicar?

Sim. Se data é o nome do campo, então ao passar 'data' você estava informando que ele deveria ordenar por uma string cujo conteúdo é 'data' e não pelo campo DATA que é o nome do campo de sua tabela.

Entendeu?

att

Denis Courcy

=D Brigadu!

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...