Jump to content

Archived

This topic is now archived and is closed to further replies.

Inside

2 parâmetros order

Recommended Posts

Caros amigos,

 

é possível ordenar resultados por 2 parâmetros Order By?

 

Preciso odernar resultados por tipo, onde o tipo 1 deve ficar em cima e o tipo 2 no final da lista, a questão é que a lista deve ficar em order alfabética, ex.:

 

 

Ana = tipo 1

Carlos = tipo 1

Eduardo = tipo 1

Ana Paula = tipo 2

Fabio = tipo 2

Marcelo = tipo 2

 

 

Tentei assim mas não deu certo:

 

SQLde = "SELECT * FROM nomes where status = 1 order by tipo, nome"

 

Obrigado pela atenção recebida.

Share this post


Link to post
Share on other sites

Existe 2 colunas na tabela "nomes" uma chamada "tipo" e a outra chamada "nome" certo? isso ta correto ok?

 

Faça uma inversão

 

SQLde = "SELECT * FROM nomes where status = 1 order by nome, tipo"

 

E veja se pela ordem não resolva.

Share this post


Link to post
Share on other sites

Tenta assim:

SQLde = "SELECT * FROM nomes  order by nome ,tipo"

Share this post


Link to post
Share on other sites

Não ficou claro o que quer se a ordem for em ordem alfabética o que postou no exemplo está errado e o certo seria como os membros postaram acima

 

Agora se quer que organize primeiro pelo tipo e depois por ordem alfabética como no seu exemplo o que postou inicialmente era para estar correto

 

Que erro que dava?

Share this post


Link to post
Share on other sites

Mário ele diz no post #3 que não dá erro, somente não organizava da maneira que ele queria, porém 3 pessoas disseram para ele fazer a inversão e como ele não voltou presumo que já tenha resolvido.

 

A instrução sql dele esta correta, certamente foi a ordem.

 

[]'s

Share this post


Link to post
Share on other sites

mas se inverter a ordem inverte a sua ideia inicial postada no post 1

 

Ana = tipo 1

Carlos = tipo 1

Eduardo = tipo 1

Ana Paula = tipo 2

Fabio = tipo 2

Marcelo = tipo 2

 

Veja que teoricamente queria que ordenasse por tipo e depois por nome

 

mas já que ele não se manifesta não podemos acrescentar muita coisa

Share this post


Link to post
Share on other sites

Mais repare na instrução sql postada por ele no primeiro post, apesar dele colocar no exemplo que deveria ordenar primeiramente com o "nome" ele estava colocando o "tipo" primeiramente, portanto acho que já foi resolvido.

Share this post


Link to post
Share on other sites

 

é possível ordenar resultados por 2 parâmetros Order By?

 

Preciso odernar resultados por tipo, onde o tipo 1 deve ficar em cima e o tipo 2 no final da lista, a questão é que a lista deve ficar em order alfabética...

 

veja a prioridade que ele colocou...

Share this post


Link to post
Share on other sites

kkk sim Mário porém no exemplo que ele postou, ele seguiu essa ordem

 

Ana = tipo 1

Carlos = tipo 1

Eduardo = tipo 1

Ana Paula = tipo 2

Fabio = tipo 2

Marcelo = tipo 2

E na instrução SQL

 

SQLde = "SELECT * FROM nomes where status = 1 order by tipo, nome"

 

Repare que esta listado por nome primeiramente e depois por tipo, por isso no order by deveria vir o nome antes do tipo, para arrumar a ordem do tipo por numeração bastaria usar ASC ao final.

 

[]'s

Share this post


Link to post
Share on other sites

não patrique ele apenas exibiu o nome na frente do tipo

 

mas a ordem é tipo e nome se fosse nome e tipo teriamos

 

Ana = tipo 1

Ana Paula = tipo 2

Carlos = tipo 1

Eduardo = tipo 1

Fabio = tipo 2

Marcelo = tipo 2

 

Percebe?

 

Apenas exibiu ao contrario, da forma que ele colocou seria o mesmo que termos

 

tipo 1 = Ana

tipo 1 = Carlos

tipo 1 = Eduardo

tipo 2 = Ana Paula

tipo 2 = Fabio

tipo 2 = Marcelo

 

a ordem seria a mesma mas alteramos a forma de exibir

 

e no caso o ASC é opcional pois é o default para ordenação

Share this post


Link to post
Share on other sites

Hum, saquei, pela ordem eu presumi que ele queria no nome, além disso achava que o bd levaria em conta o primeiro valor colocado em uma instrução nesse caso no order by, se for isso acho que um ASC no final resolveria o problema então.

Share this post


Link to post
Share on other sites

a instrução sempre ordenará na ordem dos parametros que forem colocados, neste caso a inversão dos mesmos faz toda diferença

 

no exemplo acima alterou apenas um registro mas isso porque o conjunto de dados era pequeno e já estava relativamente em ordem mas para um numero mais alto a variação seria muito mais notada

Share this post


Link to post
Share on other sites

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.