Olá
Existem alguns casos em que nos deparamos com uma base de dados onde um dado apesar de numérico está armazenado em coluna do tipo string/varchar... e não podemos alterar o tipo da mesma. Ao longo do uso em consultas pode vir a necessidade de classificar e ordenar estes dados como números mas ao executar o comando order by o resultado não é satisfatório na maioria dos casos.
A seguir deixo uma dica rápida de como implementar uma ordenação de valores a partir de uma coluna de modo que ela se comporte como ordenação de inteiro em SQL Server.
order by CAST(SUBSTRING(SuaColunaAqui+ '0', PATINDEX('%[0-9]%', SuaColunaAqui + '0'), LEN(SuaColunaAqui + '0')) AS INT)
Comentários
Postar um comentário