この質問はこれまで何度も聞かれましたが、相反する意見を見つけたので、より統一された結論を期待して、もう一度取り上げたいと思いました。
データベースに通貨の値を保存したいのですが。すべてのエントリが同じタイプの通貨(たとえばUSD)であり、正の値と負の値の両方が許可されていると仮定します。
私の最初の考えは、関連する通貨の最小単位で符号付き整数として値を格納することでした。たとえば、値$ 1.25を保存する場合125
、USDの最小単位は$ 0.01であるため、データベースに挿入します。このメソッドの良いところは、MySQLが自動的に最も近い整数に丸められることです。たとえば、ドルの値が$ 1.259の場合、を挿入でき125.9
ます。これは自動的に丸められ、126
または$1.26として格納されます。
それで、あなたはどう思いますか?これは健全なアプローチですか、それともより良い方法がありますか?