Eventos
Junte-se a nós na FabCon Vegas
31 de mar., 23 - 2 de abr., 23
O melhor evento liderado pela comunidade Microsoft Fabric, Power BI, SQL e AI. 31 de março a 2 de abril de 2025.
Registre-se hoje mesmoNão há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
to_number
Aplica-se a: SQL do Databricks Databricks Runtime 11.3 LTS e versões posteriores
Retorna expr
convertido para DECIMAL usando a formatação fmt
.
to_number(expr, fmt)
fmt
{ ' [ MI | S ] [ L | $ ]
[ 0 | 9 | G | , ] [...]
[ . | D ]
[ 0 | 9 ] [...]
[ L | $ ] [ PR | MI | S ] ' }
expr
: uma expressão STRING representando um número. expr
pode incluir espaços à esquerda ou à direita.fmt
: um literal STRING, especificando o formato esperado de expr
.Um DECIMAL(p, s) em que p
será o número total de dígitos (0
ou 9
) e s
será o número de dígitos após o ponto decimal, ou 0, se não houver nenhum.
fmt
pode conter os seguintes elementos (diferencia maiúsculas de minúsculas):
0
ou 9
Especifica um dígito esperado entre 0
e 9
.
O 0
à esquerda dos pontos decimais indica que expr
precisa ter pelo menos esse número de dígitos.
O 9
à esquerda indica que expr
pode omitir esses dígitos.
expr
não pode ser maior que o número de dígitos permitido à esquerda do ponto decimal.
Dígitos à direita do decimal indicam o número máximo de dígitos que expr
pode ter à direita do ponto decimal além do especificado por fmt
.
.
ou D
Especifica a posição do ponto decimal.
expr
não precisa incluir um ponto decimal.
,
ou G
Especifica a posição do separador de agrupamento ,
(milhares).
Precisa haver um 0
ou 9
à esquerda e à direita de cada separador de agrupamento.
expr
precisa corresponder ao separador de agrupamento relevante ao tamanho do número.
L
ou $
Especifica o local do sinal de moeda $
. Esse caractere só pode ser especificado uma vez.
S
ou MI
Especifica a posição de um sinal opcional '+' ou '-' para S
, e '-' somente para MI
. Essa diretiva pode ser especificada apenas uma vez.
PR
Permitido somente no final da cadeia de caracteres de formato; especifica que expr
indica um número negativo com colchetes angulares de encapsulamento (<1>
).
Se expr
contiver caracteres diferentes de 0
a 9
ou caracteres permitidos em fmt
, um erro será retornado.
Para retornar NULL
em vez de um erro para expr
inválido, use try_to_number().
-- The format expects:
-- * an optional sign at the beginning,
-- * followed by a dollar sign,
-- * followed by a number between 3 and 6 digits long,
-- * thousands separators,
-- * up to two dight beyond the decimal point.
> SELECT to_number('-$12,345.67', 'S$999,099.99');
-12345.67
-- Plus is optional, and so are fractional digits.
> SELECT to_number('$345', 'S$999,099.99');
345.00
-- The format requires at least three digits.
> SELECT to_number('$45', 'S$999,099.99');
Error: INVALID_FORMAT.MISMATCH_INPUT
-- The format requires at least three digits.
> SELECT try_to_number('$45', 'S$999,099.99');
NULL
-- The format requires at least three digits
> SELECT to_number('$045', 'S$999,099.99');
45.00
-- Using brackets to denote negative values
> SELECT to_number('<1234>', '999999PR');
-1234
Eventos
Junte-se a nós na FabCon Vegas
31 de mar., 23 - 2 de abr., 23
O melhor evento liderado pela comunidade Microsoft Fabric, Power BI, SQL e AI. 31 de março a 2 de abril de 2025.
Registre-se hoje mesmo