Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:Banco de Dados SQL do
Azure
Instância Gerenciada de SQL do Azure
Azure Synapse Analytics
Analytics Platform System (PDW)
Banco de Dados SQL no Microsoft Fabric
Tipos de dados que representam valores monetários ou de moeda.
Remarks
| Tipo de dados | Range | Armazenamento |
|---|---|---|
| money | -922.337.203.685.477,5808 a 922.337.203.685.477,5807 (-922.337.203.685.477,58 para 922.337.203.685.477,58 para Informática. A Informatica suporta apenas duas casas decimais, não quatro.) |
8 bytes |
| smallmoney | -214.748,3648 a 214.748,3647 | 4 bytes |
Os
Use um período para separar unidades monetárias parciais, como centavos, de unidades monetárias inteiras. Por exemplo, 2.15 especifica 2 dólares e 15 centavos.
Esses tipos de dados podem usar qualquer um dos seguintes símbolos de moeda.
| Symbol | Currency | Valor hexadecimal |
|---|---|---|
| $ | Sinal do dólar | 0024 |
| ¢ | Sinal de cêntimo | 00A2 |
| £ | Sinal de libra | 00A3 |
| ¤ | Sinal de moeda | 00A4 |
| ¥ | Sinal de iene | 00A5 |
| ৲ | Marca de rupia bengali | 09F2 |
| ৳ | Sinal de rupia bengali | 09F3 |
| ฿ | Símbolo da moeda tailandesa Baht | 0E3F |
| ៛ | Símbolo da moeda Khmer Riel | 17DB |
| ₠ | Sinal da moeda euro | 20A0 |
| ₡ | Sinal de dois pontos | 20A1 |
| ₢ | Placa de Cruzeiro | 20A2 |
| ₣ | Sinal de franco francês | 20A3 |
| ₤ | Placa de lira | 20A4 |
| ₥ | Placa do moinho | 20A5 |
| ₦ | Placa de Naira | 20A6 |
| ₧ | Sinal de Peseta | 20A7 |
| ₨ | Sinal da rúpia | 20A8 |
| ₩ | Won sign | 20A9 |
| ₪ | Novo sinal de Sheqel | 20AA |
| ₫ | Sinal do Dong | 20AB |
| € | Signo do euro | 20AC |
| ₭ | Sinal Kip | 20AD |
| ₮ | Sinal de Tugrik | 20AE |
| ₯ | Signo de dracma | 20AF |
| ₰ | Sinal Penny alemão | 20B0 |
| ₱ | Sinal de peso | 20B1 |
| ﷼ | Signo de rial | FDFC |
| ﹩ | Pequeno cifrão | FE69 |
| $ | Cifrão de largura total | FF04 |
| ¢ | Sinal de centavo de largura total | FFE0 |
| £ | Sinal de libra de largura total | FFE1 |
| ¥ | Sinal de iene de largura total | FFE5 |
| ₩ | Sinal Won de largura total | FFE6 |
Não é necessário colocar dados monetários ou de moeda entre aspas simples ('). Embora você possa especificar valores monetários precedidos por um símbolo de moeda, o SQL Server não armazena nenhuma informação de moeda associada ao símbolo, ele apenas armazena o valor numérico.
Warning
Você pode experimentar erros de arredondamento através de truncamento, ao armazenar valores monetários como dinheiro e dinheiro pequeno. Evite usar esse tipo de dados se seus valores de dinheiro ou moeda forem usados em cálculos. Em vez disso, use o tipo de dados decimal
Converter dados de dinheiro
Quando você converte para moeda de tipos de dados inteiros, presume-se que as unidades estejam em unidades monetárias. Por exemplo, o valor inteiro de 4 é convertido para o moeda equivalente a 4 unidades monetárias.
O exemplo a seguir converte smallmoney e valores de de dinheiro em varchar e tipos de dados decimais, respectivamente.
DECLARE @mymoney_sm SMALLMONEY = 3148.29,
@mymoney MONEY = 3148.29;
SELECT CAST(@mymoney_sm AS VARCHAR(20)) AS 'SM_MONEY VARCHAR(20)',
CAST(@mymoney AS DECIMAL) AS 'MONEY DECIMAL';
Aqui está o conjunto de resultados. Como o tipo de decimal
SM_MONEY VARCHAR(20) MONEY DECIMAL
------------------------------ ----------------------
3148.29 3148