MySQL 5.6 リファレンスマニュアル  /  データ型  /  カラムに適した型の選択

11.8 カラムに適した型の選択

最適なストレージのために、毎回もっとも正確な型を使用するよう試みる必要があります。たとえば、整数カラムを 1 から 99999 の範囲の値に使用する場合、MEDIUMINT UNSIGNED が最適な型になります。必要なすべての値を表す型の中で、これが、使用するストレージの容量がもっとも少ない型になります。

DECIMAL カラムを使用した基本的なすべての計算 (+-*、および /) は、65 桁 (10 進法) の精度で行われます。セクション11.1.1「数値型の概要」を参照してください。

精度がそれほど重要でない場合や、スピードが最優先事項である場合は、DOUBLE 型で十分と考えられます。精度を高めるために、BIGINT に格納されている固定小数点型にいつでも変換できます。これにより、64 ビット整数のすべての計算を行い、続いて必要に応じて結果を浮動小数点値に戻すことができます。

PROCEDURE ANALYSE を使用すると、最適なカラムデータ型の選択に役立つ情報を入手できます。詳細は、セクション8.4.2.4「PROCEDURE ANALYSE の使用」を参照してください。

Download this Manual
EPUB - 7.5Mb
HTML Download (TGZ) - 7.1Mb
HTML Download (Zip) - 7.2Mb
User Comments
  Posted by Martin Feuchtwanger on August 29, 2008
Instead of

"For the most efficient use of storage, try to use the MOST precise type in all cases."

I think it should be

"For the most efficient use of storage, try to use the LEAST precise type THAT WILL ACCOMMODATE ALL POSSIBLE VALUES in all cases."

(EMPHASIS made just to highlight the difference.)
  Posted by Jalil Latiff on February 11, 2012
i think the precision he meant refers to the TYPE rather than the numbers. If you have numeric data for example, you can also store it as string, but it would be more precise to store it as the relevant numeric type, as it would be more efficient.
Sign Up Login You must be logged in to post a comment.