ホームページ制作 オフィスオバタ

MYSQLで小数点を使ってみた

プログラム制作で扱う数字は、たいてい「整数」です。
計算する要素がほとんどなく、数値の目的は数を数えることだけだったりするためです。

そんななか、プログラムで小数点を扱う事例がありました。
数値計算目的のアプリ制作であったためです。

PHPでは、小数点は宣言しなくても普通に使えます。
ただ、MYSQLではintなどの数値型では小数点は使えません。

数値データを保存する必要があったため、MYSQLで小数点を保存しなければいけませんでした。

どうやればMYSQLで小数点を保存できるのか?

いつものごとくググって調べました。

int型の項目に小数を入れてみたらこうなりました

まずはint型の項目に小数を入れてみたところ、以下のようになりました。

小数を無理やり入れてみると、こうなりました。

案の定ですが、整数にむりやり変換されました。
int型では小数は無理のようです。

MYSQLで小数を使うには専用の型を使用する

MYSQLで小数を使うには、専用の型があります。
それがdecimal です。

次のようにやってみたところ、MYSQLで小数が使えました。

decimal型に小数を入れると次のようになりました。

ここで疑問:decimalは小数点第何位までいれられるのか?

MYSQLで少数が使えることがわかりました。
でも小数点は第何位までつかえるのか疑問に思いました。

そこで調べてみました。

小数点はほぼ無制限に使用できます。

decimal型の使い方は桁数と、小数点の桁数を指定します。

例えば、小数点の桁数を増やす場合は、次のように宣言します。

decimalは事前に桁数を宣言する必要がありますが、小数点の桁数を流動的に変更することができます。
用途に合わせて宣言します。

小数点が何桁必要かは、打ち合わせ等で何桁必要かで判断します。

decimal型を使用する場合は何桁必要が綿密に検討することが大事です

decimal型は使用する桁数を事前に設定するため、足りなくなった場合の再修正に手間がかかります。
開発段階であれば、まだ桁数の変更をしても影響はすくないですが、稼働中の場合は思いのほか大変です。

整数は何桁必要ななのか?
小数点は何桁必要なのか?

じっくり検討して設計することが大事です。

かくいう私も、プログラム開発中に小数の桁数が足りないことに気づき何回かdecimal型の再設定を行いました。

何事もじっくり考えることが肝要です。

モバイルバージョンを終了