- Home ›
- MySQLの使い方 ›
- MySQLのデータ型 ›
- HERE
浮動小数点数型
ここでは数値型の中でも浮動小数点数型について確認していきます。
浮動小数点数型は次の2つが用意されています。
FLOAT -3.402823466E+38 から -1.175494351E-38 0 1.175494351E-38 から 3.402823466E+38 DOUBLE -1.7976931348623157E+308 から -2.2250738585072014E-308 0 2.2250738585072014E-308 から 1.7976931348623157E+308 別名:DOUBLE PRECISION, REAL
ではDOUBLE型のカラムを持つテーブルを作成します。
整数型と同じく浮動小数点数型にも各データ型には格納できる値の範囲が決まっています。ではデータを追加した後でテーブルのデータを取得してみます。
桁数と小数点以下の桁数
FLOAT型とDOUBLE型は精度と小数点以下の桁数を指定することができます。書式は次の通りです。
DOUBLE(桁数, 小数点以下の桁数)
桁数は全体の桁数で、小数点以下の桁数は桁数の中で小数点以下の桁数です。例えば全体が5桁で小数点以下の桁数が3桁のものはdouble(5, 3)と記述し、34.567のように表示されます。
例としてDOUBLE(4,3)型のカラムとDOUBLE(4,2)型のカラムを持つテーブルを作成してみます。
それぞれのカラムに1.4という数値を持つデータを追加した後でテーブルのデータを取得してみます。
DOUBLE(4,3)型のカラムは全体が4桁で小数点以下3桁ですので1.400と表示されます。またDOUBLE(4,2)型のカラムは全体が4桁で小数点以下が2桁ですので1.40と表示されます。
今度はそれぞれのカラムに3.7982という数値を持つデータを追加した後でテーブルのデータを取得してみます。
格納しようとした値は小数点以下が4桁の数値です。各カラムのデータ型の小数点以下の桁数は3桁と2桁ですので指定した桁数までの値が格納されます。
最後はそれぞれのカラムに32.53という数値を持つデータを追加してみます。
DOUBLE(4,3)型のカラムは全体が4桁で小数点以下3桁のため、整数部分が1桁です。そのカラムに整数部分が2桁の値を格納しようとした為にエラーとなりました。
UNSIGNED
各値は正の数と負の数を扱うことができますが、UNSIGNEDを付けると正の数しか格納できなくなります。注意して頂きたいのは整数と異なり浮動小数点数はUNSIGNEDを付けても範囲は変わりません。使い方は次の通りです。
DOUBLE UNSIGNED
例としてDOUBLE UNSIGNED型のカラムを1つ持つテーブルを作成してみます。
データを追加してみます。
正の値は格納できますが、負の値を格納しようとするとエラーとなります。
ZEROFILL
データ型にZEROFILLを付けるとデータ型の桁数分だけ0で埋められます。使い方は次の通りです。
DOUBLE ZEROFILL
※ZEROFILLを付けると自動的にUNSIGNEDが付きます
例としてDOUBLE ZEROFILL型とFLOAT ZEROFILL型のカラムを持つテーブルを作成してみます。
データを追加して後でテーブルのデータを取得してみます。
桁数分だけ0で埋められて表示されます。
( Written by Tatsuo Ikura )