アプリ版:「スタンプのみでお礼する」機能のリリースについて

金額を格納する属性のデータ型をINT型(UNSIGNED)にして設計していましたが、MySQLのマニュアルを見ると、金額の型にはDECIMALを使用すべきとあります。なぜINT型ではいけないのでしょうか?
よろしくお願いします。

A 回答 (2件)

いけないわけではなくて望ましいとの事でしょう。



たとえば100g 98.5円の牛肉があった場合は200gで197円です。
INT型だと98.5円は98円か99円でしか表現できません。
その他にも999円の30%OFFだと699.3円です。
整数型のINTだと小数点以下が表現できないのでDECIMAL型の方が望ましいとの事でしょう。
    • good
    • 0
この回答へのお礼

なるほど、では小数点以下がない金額しか扱わない場合は別にINTでも問題ないわけですね。
ありがとうございました。

お礼日時:2007/05/08 12:10

小数点以下の値(何円何銭など)は扱わないのですか?


INTなどの2進数表現の場合、小数点以下の精度を十分に保てません。
    • good
    • 0
この回答へのお礼

小数点以下は使わないですね。
その場合は別に問題なさそうですね。
ありがとうございました。

お礼日時:2007/05/08 12:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す