money y smallmoney (Transact-SQL)money and smallmoney (Transact-SQL)

SE APLICA A: síSQL Server (a partir de 2008) síAzure SQL Database síAzure SQL Data Warehouse síAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server (starting with 2008) yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

Tipos de datos que representan valores monetarios o de moneda.Data types that represent monetary or currency values.

NotasRemarks

Tipo de datosData type IntervaloRange StorageStorage
moneymoney De -922.337.203.685.477,5808 a 922.337.203.685.477,5807 (de -922.337.203.685.477,58-922,337,203,685,477.5808 to 922,337,203,685,477.5807 (-922,337,203,685,477.58
a 922.337.203.685.477,58 en el caso de Informatica.to 922,337,203,685,477.58 for Informatica. Informatica admite únicamente dos decimales, no cuatro).Informatica only supports two decimals, not four.)
8 bytes8 bytes
smallmoneysmallmoney De - 214.748,3648 a 214.748,3647- 214,748.3648 to 214,748.3647 4 bytes4 bytes

Los tipos de datos money y smallmoney tienen una precisión de una diezmilésima de las unidades monetarias que representan.The money and smallmoney data types are accurate to a ten-thousandth of the monetary units that they represent. En Informatica, los tipos de datos money y smallmoney tienen una precisión de una centésima de las unidades monetarias que representan.For Informatica, the money and smallmoney data types are accurate to a one-hundredth of the monetary units that they represent.

Use un punto para separar las unidades parciales de moneda, como céntimos, de las unidades completas de moneda.Use a period to separate partial monetary units, like cents, from whole monetary units. Por ejemplo, 2.15 puede especificar 2 dólares y 15 centavos.For example, 2.15 specifies 2 dollars and 15 cents.

Estos tipos de datos pueden usar alguno de los siguientes símbolos de moneda.These data types can use any one of the following currency symbols.

Tabla de símbolos de moneda, valores hexadecimalesTable of currency symbols, hexadecimal values

No es necesario incluir los datos de moneda entre comillas simples (').Currency or monetary data does not need to be enclosed in single quotation marks ( ' ). Es importante recordar que aunque es posible especificar valores monetarios precedidos de un símbolo de moneda, SQL ServerSQL Server no almacena ninguna información de moneda asociada con el símbolo, solo almacena el valor numérico.It is important to remember that while you can specify monetary values preceded by a currency symbol, SQL ServerSQL Server does not store any currency information associated with the symbol, it only stores the numeric value.

Convertir datos moneyConverting money data

Cuando se convierte a money desde tipos de datos enteros, se supone que las unidades están en unidades de moneda.When you convert to money from integer data types, units are assumed to be in monetary units. Por ejemplo, el valor entero 4 se convierte al equivalente money de 4 unidades monetarias.For example, the integer value of 4 is converted to the money equivalent of 4 monetary units.

En el siguiente ejemplo se convierten valores smallmoney y money a tipos de datos varchar y decimal respectivamente.The following example converts smallmoney and money values to varchar and decimal data types, respectively.

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.Here is the result set.

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

Vea tambiénSee also

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)ALTER TABLE (Transact-SQL) CAST and CONVERT (Transact-SQL) CREATE TABLE (Transact-SQL) Data Types (Transact-SQL) DECLARE @local_variable (Transact-SQL) SET @local_variable (Transact-SQL) sys.types (Transact-SQL)