Ir para conteúdo

POWERED BY:

Arquivado

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

Ernestop

Ordem em decimal ferrada

Recommended Posts

Boa noite pessoal,

 

Estou tendo um problema com um cliente meios chato. O ORDER by em questão puxa os alfabeticos na boa mas os numericos tendem a vir desta forma:

 

1,100,11,12,2,2000,2002,20000,21,517,8C,980

 

Queria saber se tem algum jeito de resolver e essa danação vir:

 

1,2,11,12,21,100,518,980,2000,2002,20000,8C

 

sacaram? no momento estou usando a query abaixo:

 

group = "SELECT * FROM " & tabela & objstr & " ORDER by nameesp"

 

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito provavelmente o campo está como tipo TEXTO e não como numérico.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Apenas complementando, testou com ASC ou DESC determinando assim se a ordenação será ascendente ou descendente ?

... ORDER by nameesp ASC"

 

pode testar também um format number após o order by

order by (FormatNumber(nameesp,2) ASC)

 

Pode ser que funcione, não testei.

 

Mas como o Salgado disse, é bom verificar o formato do campo no db e se possivel, altera-lo para numerico e ver se funciona da maneira esperada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ou depois você usa o formatnumber(nameesp,2)

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem o campo é um alfanum mas infelizmente tem que ser alfanum. Só que alguns nomes são numericos e não tem como fazer uma tabela exclusiva para esses casos :(

 

Quanto a atribuição ASC, já tentei colocar ela mas não havia tanta necessidade já que o default é ASC caso não seja declarado.

 

[]s

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.