money y smallmoney (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Tipos de datos que representan valores monetarios o de moneda.

Observaciones

Tipo de datos Intervalo Storage
money De -922.337.203.685.477,5808 a 922.337.203.685.477,5807 (de -922.337.203.685.477,58
a 922.337.203.685.477,58 en el caso de Informatica. Informatica admite únicamente dos decimales, no cuatro).
8 bytes
smallmoney De -214.748,3648 a 214.748,3647 4 bytes

Los tipos de datos money y smallmoney tienen una precisión de una diezmilésima de las unidades monetarias que representan. En Informatica, los tipos de datos money y smallmoney tienen una precisión de una centésima de las unidades monetarias que representan.

Use un punto para separar las unidades parciales de moneda, como céntimos, de las unidades completas de moneda. Por ejemplo, 2.15 puede especificar 2 dólares y 15 centavos.

Estos tipos de datos pueden usar alguno de los siguientes símbolos de moneda.

Table of currency symbols, hexadecimal values

No es necesario incluir los datos de moneda entre comillas simples ('). Es importante recordar que aunque es posible especificar valores monetarios precedidos de un símbolo de moneda, SQL Server no almacena ninguna información de moneda asociada con el símbolo, solo almacena el valor numérico.

Convertir datos money

Cuando se convierte a money desde tipos de datos enteros, se supone que las unidades están en unidades de moneda. Por ejemplo, el valor entero 4 se convierte al equivalente money de 4 unidades monetarias.

En el siguiente ejemplo se convierten valores smallmoney y money a tipos de datos varchar y decimal respectivamente.

DECLARE @mymoney_sm SMALLMONEY = 3148.29,  
        @mymoney    MONEY = 3148.29;  
SELECT  CAST(@mymoney_sm AS VARCHAR) AS 'SM_MONEY varchar',  
        CAST(@mymoney AS DECIMAL)    AS 'MONEY DECIMAL';  

El conjunto de resultados es el siguiente:

SM_MONEY VARCHAR               MONEY DECIMAL  
------------------------------ ----------------------  
3148.29                        3148    
(1 row(s) affected)  

Consulte también

ALTER TABLE (Transact-SQL)CAST y CONVERT (Transact-SQL)CREATE TABLE (Transact-SQL)Tipos de datos (Transact-SQL)DECLARE @local_variable (Transact-SQL)SET @local_variable (Transact-SQL)sys.types (Transact-SQL)