Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

sumocoski

[Resolvido] ORDER BY retornando resultado fora de ordem

Recommended Posts

Olá amigos, estou usando mysql 5.1, e estou puxando valores com order by e eles não estão certos nem em ASC ou DESC.

 

Ai olhei no phpmyadmim e também estão assim.

 

No navicat mesma coisa, não ordena do valore menor para o maior e vice versa corretamente.

 

 

1 - 2 - 3 - 4 ....

 

fica

 

2 - 4 - 1 - 3 ....

 

veja a busca no php:

 

SELECT * FROM usuarios ORDER BY money DESC LIMIT 1

 

Mas o erro se apresenta no php, phpmyadmin e navicat.

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é seu order by que está ordenando pelo que você não quer?

Veja:

create table algo (
	campo int not null
);

insert into algo values(8),(4),(1),(3),(5);
SELECT campo FROM algo ORDER BY campo DESC;

Diga o output retornado...

Compartilhar este post


Link para o post
Compartilhar em outros sites

O money é um exemplo, que no caso ordenariamos pelo o que tem mais dinheiro, para o que tem menos.

 

Percebi uma coisa aqui, ele ordena pelo primeiro número e não pelo total ou seja:

 

300 é maior que 96 certo, mas ele mostra assim:

 

96

896

7

689

52

4897

300

21

1203

 

Viram, ele ordena pela primeira casa e não pelo numero em si.

 

Como ajeitar isso, vlw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

porque o campo deve estar como texto no seu db

 

corrija para o tipo de dados adequado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso, estava em varchar que ordena por alfanumericos, ai mudei pata INT e resolveu o problema.

 

Obrigado pela ajuda de todos e espero que minha duvida ajude algume tb.

Compartilhar este post


Link para o post
Compartilhar em outros sites

que bom que resolveu seu problema

 

Parabéns

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.