Ir para conteúdo

POWERED BY:

Arquivado

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

Touche

Problema com ordenação

Recommended Posts

To com um problema de ordenação aqui dos registros...Eu tinha colocado os dados como INT pra poder ordenar 1001011000Porem meu cliente quer cadastrar uma unidade com nomes 200A 200B ai eu alterei pra VARCHAR e agora a ordenacao ficou errada:1000100101Como posso resolver isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

To com um problema de ordenação aqui dos registros...Eu tinha colocado os dados como INT pra poder ordenar 1001011000Porem meu cliente quer cadastrar uma unidade com nomes 200A 200B ai eu alterei pra VARCHAR e agora a ordenacao ficou errada:1000100101Como posso resolver isso?

Já tive um problema parecido, e eu resolvi buscando padrões nos dados inseridos. Se houver um padrão, facilita!Por exemplo: Se o padrão for sempre esse, 999A, 999B, 999C, você pode simplesmente dar um raplace nesses caracteres (A, B e C por '') no próprio SQL e converter pra Numérico no próprio ORDER BY.Mas pra ficar melhor ainda, você pode criar uma coluna duplicada no seu banco. Nesse caso vai resolver até pro caso de não existirem padrões, pois você não vai precisar ficar convertendo nada em tempo de execução. Por exempo:Colunas:Codigo (Varchar), CodigoOrdenacao (Integer)Na hora de incluir você trata a string e inclui assim:Na coluna Codigo - 200ANa coluna CodigoOrdenacao - 200Dessa forma, você vai ordenar pela coluna CodigoOrdenacao, mas exibir a coluna Codigo.AbraçoCassiano.

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.