다음을 통해 공유


money 및 smallmoney(Transact-SQL)

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)

통화 또는 통화 값을 나타내는 데이터 형식입니다.

설명

데이터 형식 범위 스토리지
money -922,337,203,685,477.5808 ~ 922,337,203,685,477.5807 (-922,337,203,685,477.58
~922,337,203,685,477.58(Informatica의 경우) Informatica는 4개가 아닌 2개의 소수점만 지원합니다.)
8바이트
smallmoney -214,748.3648 ~ 214,748.3647 4바이트

moneysmallmoney 데이터 형식은 나타내는 통화 단위의 1/10000까지 정확합니다. Informatica의 경우 moneysmallmoney 데이터 형식은 나타내는 통화 단위의 1/100에 정확합니다.

기간을 사용하여 센트와 같은 부분 통화 단위를 전체 통화 단위에서 분리합니다. 예를 들어 2.15 2달러와 15센트를 지정합니다.

이러한 데이터 형식은 다음 통화 기호 중 하나를 사용할 수 있습니다.

기호 통화 16 진수 값
$ $ 기호 0024
¢ 센트 기호 00A2
£ 파운드 기호 00A3
¤ 통화 기호 00A4
¥ 엔화 기호 00A5
벵골어 루피 마크 09F2
벵골어 루피 기호 09F3
฿ 태국어 바트 통화 기호 0E3F
크메르 리엘 통화 기호 17DB
유로 통화 기호 20A0
콜론 기호 20A1
크루세이로 사인 20A2
프랑스 프랑 기호 20A3
Lira 기호 20A4
밀 기호 20A5
Naira 기호 20A6
페세타 기호 20A7
Rs 루피 기호 20A8
원 기호 20A9
새 셰켈 기호 20AA
동 기호 20AB
유로 기호 20AC
Kip 기호 20AD
Tugrik 기호 20AE
드라크마 기호 20AF
독일 페니 기호 20B0
Peso 기호 20B1
리알 기호 FDFC
작은 달러 기호 FE69
전폭 달러 기호 FF04
전체 너비 Cent 기호 FFE0
전폭 파운드 기호 FFE1
전폭 엔 기호 FFE5
전폭 원 기호 FFE6

통화 또는 통화 데이터를 작은따옴표(')로 묶을 필요가 없습니다. 통화 기호 앞에 통화 값을 지정할 수 있지만 SQL Server는 기호와 연결된 통화 정보를 저장하지 않고 숫자 값만 저장합니다.

Warning

통화 값을 moneysmallmoney저장할 때 잘림을 통해 반올림 오류를 경험할 수 있습니다. 금액 또는 통화 값이 계산에 사용되는 경우 이 데이터 형식을 사용하지 마십시오. 대신 10진수 데이터 형식을 4개 이상의 소수 자릿수와 함께 사용합니다.

Money 데이터 변환

정수 데이터 형식에서 money변환하는 경우 단위는 통화 단위로 간주됩니다. 예를 들어 정수 값 4 은 4 통화 단위에 해당하는 금액 으로 변환됩니다.

다음 예에서는 smallmoneymoney 값을 각각 varchardecimal 데이터 형식으로 변환합니다.

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';

결과 집합은 다음과 같습니다. 예제의 소수점 형식에는 소수 자릿수없으므로 값이 잘립니다.

SM_MONEY VARCHAR(20)           MONEY DECIMAL
------------------------------ ----------------------
3148.29                        3148