TO_NUMBER converte uma string em um valor numérico (decimal).
nota
Recomendamos que você use FM
em sua string de formato para suprimir espaços em branco e zeros de preenchimento. Para obter uma lista dos formatos válidos, consulte Strings de formato numérico.
Sintaxe
to_number(string, format)
Argumentos
- string
-
String a ser convertida. O formato deve ser um valor literal.
- format
-
O segundo argumento é uma string de formato que indica como a string de caracteres deve ser analisada para criar o valor numérico. Por exemplo, o formato
'FM99D999'
especifica que a string a ser convertida consiste em cinco dígitos com o ponto decimal na terceira posição. Por exemplo,to_number('12.345','FM99D999')
retorna12.345
como um valor numérico. Para obter uma lista dos formatos válidos, consulte Strings de formato numérico.
Tipo de retorno
TO_NUMBER retorna um número DECIMAL.
Se ocorrer falha na conversão no formato, um erro será gerado.
Exemplos
O exemplo a seguir converte a string 12,454.8-
em um número:
select to_number('12,454.8-', 'FM99G999D9S');
to_number
-----------
-12454.8
O exemplo a seguir converte a string $ 12,454.88
em um número:
select to_number('$ 12,454.88', 'FML99G999D99');
to_number
-----------
12454.88
O exemplo a seguir converte a string $ 2,012,454.88
em um número:
select to_number('$ 2,012,454.88', 'FML9,999,999.99');
to_number
-----------
2012454.88