sql-server - 찾기 - 소수점 0 없애기




SQL Server 'MONEY'데이터 형식이 10 진수 부동 소수점 또는 2 진 부동 소수점입니까? (2)

기본 차이점은 필요한 저장 공간이라고 생각합니다.

DECIMAL(19,4) 는 9 바이트를 필요로합니다.

MONEY 이 8 바이트를 필요로합니다

SQL Server 'MONEY'데이터 형식이 10 진수 부동 소수점 또는 2 진 부동 소수점인지 여부를 거부하거나 확인하는 항목을 찾을 수 없습니다.

설명에서 MONEY 유형 범위는 -2 ^ 63에서 2 ^ 63-1까지이므로이 유형은 이진 부동 소수점이어야 함을 의미합니다.

하지만 이 페이지 에는 돈을 "정확한"숫자로 표시합니다. MONEY가 10 진수 부동 소수점 일 수 있다고 제안하는 유형 (그렇지 않은 경우 정확한 방법 또는 정확한 값의 정의는 무엇입니까?)

그런 다음 MONEY가 10 진수 부동 소수점이면 MONEY와 DECIMAL (19,4)의 차이점은 무엇입니까?


둘 다. 부동 소수점을 구현 한 경우 FLOAT 및 REAL 유형과 동일한 부정확성이 적용됩니다. 위키피디아의 부동 소수점 참조.

돈은 고정 소수점 유형입니다.

(-10 ^ 15 + 1 ~ 10 ^ 15-1)에 비해 작은 범위 (922,337,203,685,477.5808 ~ 922,337,203,685,477.5807)이므로 DECIMAL (19,4)보다 1 바이트 작습니다.







currency