복붙노트

[SQL] PostgreSQL의 : 어떤 데이터 유형은 환율에 사용되어야 하는가?

SQL

PostgreSQL의 : 어떤 데이터 유형은 환율에 사용되어야 하는가?

여기에 설명 된대로 돈 유형처럼 보인다는 권장하지 않습니다

내 응용 프로그램은 저장 통화, 내가 데이터 유형을 사용하여야 할 필요가? 숫자, 돈 또는 FLOAT?

해결법

  1. ==============================

    1.강제 2 개 단위의 정밀도 숫자. 몇 달러 - 당신이 경우에, 사람들이 재무 보고서의 결론의 그림은 +로 잘못되었거나 때 불행이 될 것 때문에 절대로 통화를 나타내는 데이터 형과 같은 부동 또는 플로트를 사용하지 않습니다.

    강제 2 개 단위의 정밀도 숫자. 몇 달러 - 당신이 경우에, 사람들이 재무 보고서의 결론의 그림은 +로 잘못되었거나 때 불행이 될 것 때문에 절대로 통화를 나타내는 데이터 형과 같은 부동 또는 플로트를 사용하지 않습니다.

    돈 유형은 지금까지 내가 말할 수있는 역사적 이유에 남아 있습니다.

  2. ==============================

    2.귀하의 소스는 결코 관계자에 있습니다. 그것은 2011 년에 날짜와 난 저자를 인식하지 못합니다. 돈 유형이 "실망"경우 PostgreSQL은 매뉴얼에 그렇게 말 것 - 그것은하지 않는.

    귀하의 소스는 결코 관계자에 있습니다. 그것은 2011 년에 날짜와 난 저자를 인식하지 못합니다. 돈 유형이 "실망"경우 PostgreSQL은 매뉴얼에 그렇게 말 것 - 그것은하지 않는.

    더 공식 소스, (그냥이 주에서!)를 pgsql-일반적으로이 스레드를 읽고, 다르시 J.M. 가인 (돈 유형의 원래 저자)와 톰 레인을 포함한 핵심 개발자 진술과 :

    기본적으로, 돈은 (제한적) 용도가있다. 숫자 이상의 장점은 성능이다.

    진수는 포스트 그레스의 숫자 단지의 별칭입니다.

    관련 대답 (과 의견!) 최신 버전의 개선 사항에 대한 :

    개인적으로, 나는 나타내는 센트 정수로 저장 통화로 좋아한다. 즉, 언급 한 옵션의 다른 어떤 것보다 더 효율적입니다.

  3. ==============================

    3.당신의 선택은 다음과 같습니다 :

    당신의 선택은 다음과 같습니다 :

    옵션 2는 가장 일반적이고 쉬운와 작업하는 것입니다. 크거나 가장 적합한의 소형 (모두 12 자리 숫자를 의미하는 내 예 12) 정밀도를 확인합니다.

    당신이 사업의 의미를 가지고 하나의 값으로 (예를 들어 환율을 포함) 계산 결과였다 여러 트랜잭션을 집계하는 경우 참고 정밀도는 정확한 매크로 값을 제공하기 위해 더 높은해야한다는; 합이 정확하고 개별 값은 디스플레이 %의 정밀도로 반올림 될 수 소수 (18, 8) 같은 것을 사용하는 것이.

  4. ==============================

    4.나는 나의 통화 필드 등을 모두 유지 :

    나는 나의 통화 필드 등을 모두 유지 :

    숫자 (15,6)

    많은 소수점이 과도한 것 같지만 조금의 기회도이 있다면 당신은 당신이 변환 그만큼 정밀도를해야합니다 여러 통화를 처리해야합니다. 아무리 사용자를 제시하고있어, 나는 항상 미국 달러에 저장할 수 없습니다. 이런 식으로 나는 쉽게 관련된 일의 전환율 주어, 다른 통화로 변환 할 수 있습니다.

    당신은 아무것도하지만, 하나 개의 통화를하지 않을 경우, 여기에 최악의 일은 당신이 어떤 제로를 저장하는 공간의 비트를 낭비한다는 것입니다.

  5. ==============================

    5.나는 마이크로 달러 (또는 이와 유사한 주요 통화)를 사용하는 것이 좋습니다. 마이크로 1백만번째 1 그래서 마이크로 달러 = $ 0.000001을 의미한다.

    나는 마이크로 달러 (또는 이와 유사한 주요 통화)를 사용하는 것이 좋습니다. 마이크로 1백만번째 1 그래서 마이크로 달러 = $ 0.000001을 의미한다.

  6. from https://stackoverflow.com/questions/15726535/postgresql-which-datatype-should-be-used-for-currency by cc-by-sa and MIT license