3

저는 Postgres와 ActiveRecord를 사용하여 지불 및 거래 수수료 (백분율 기준)를 추적하는 레일 애플리케이션을 작성하고 있습니다.회계 금액에 정수 또는 10 진수를 사용 하시겠습니까?

현재이 트랜잭션의 값을 추적하기 위해 BigDecimal (및 ActiveRecord의 소수 열)을 사용하지만 반올림을 처리하는 것은 실망 스럽습니다. (예 : how 8.05 - 1.0 ==> 7.050000000000001)

달러 금액으로 decimal 열을 계속 사용하는 것이 합리적입니까? 또는 반올림 문제를 처리 할 필요가 없도록 integer 값 센트에 모든 것을 저장하도록 전환해야합니다.

중요 사항은 (지금 현재까지) 분수 센트의 가치가 없다는 것입니다.

각 방법의 장단점은 무엇입니까?

답변