Ir para conteúdo

POWERED BY:

Arquivado

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

Nadia Teles

Converter string para valor númerico

Recommended Posts

Boa tarde pessoal,Tenho uma consulta em sql server da seguinte forma:SELECT * FROM tabela ORDER BY convert(float,campo) ASC. Nesta consulta o campo é do tipo Varchar(30) e estou transformando os valores deste campo no tipo float e ordenando de forma crescente.Preciso fazer o mesmo em oracle. Fiz desta forma e está funcionando:SELECT * FROM tabela ORDER BY TO_NUMBER(campo) ASC. Mas surgiu uma dúvida. Qual seria o tamanho do TO_NUMBER. Não sei se é int, long, etc., não preciso especificar o tipo de number. Tá correto?obrigadaNádia

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com o to_number eve funcionar , só tome cuidado com o formato da casa decimal x formata numérico vigente (EM GERAL FICA O PONTO DOS GRINGOS).

 

você PODE ALTERAR O PARAM NLS_NUMERIC_CHARACTER

DA SESSAO

 

ALTER SESSION SET NLS_NUMERIC_CHARACTER = ','

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com o to_number eve funcionar , só tome cuidado com o formato da casa decimal x formata numérico vigente (EM GERAL FICA O PONTO DOS GRINGOS).você PODE ALTERAR O PARAM NLS_NUMERIC_CHARACTERDA SESSAOALTER SESSION SET NLS_NUMERIC_CHARACTER = ','

Bom dia,Não entendi muito bem sobre o NLS_NUMERIC_CHARACTER. Preciso fazer esta transformação no select. Como o select ficaria?obrigadaNádia

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei como o valor está no seu bd to_number esrepa por padrão ponto , mas você pode mudar numa sessão para vírgula é o que faz o alter.

Se a base estiver com ponto e o bd for padrão o to_number funciona.

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.