個人の備忘録としてSQLのデータ型をまとめています
SQL データ型一覧
整数
符号あり
0とプラス数値、マイナス数値を表す整数
TYNYINT | -128 ~ +127 | 1バイト | 2の8乗 |
SMALLINT | -32,768 ~ 32,767 | 2バイト | 2の16乗 |
MEDIUMINT | -8,388,608 ~ 8,388,607 | 3バイト | 2の24乗 |
INT | -21億 ~ +21億 | 4バイト | 2の32乗 |
BIGINT | -922京 ~ +922京 | 8バイト | 2の64乗 |
符号なし(UNSIGNED)
マイナスのない0以上の整数
TYNYINT UNSIGNED | 0 ~ 255 | 1バイト | 2の8乗 |
SMALLINT UNSIGNED | 0 ~ 65,535 | 2バイト | 2の16乗 |
MEDIUMINT UNSIGNED | 0 ~ 16,777,215 | 3バイト | 2の24乗 |
INT UNSIGNED | 0 ~ 42億 | 4バイト | 2の32乗 |
BIGINT UNSIGNED | 0 ~ 1844京 | 8バイト | 2の64乗 |
実数
DECIMAL | 固定小数点 |
FLOAT | 浮動小数点 |
DOUBLE | 浮動小数点(高精度) |
文字列
CHAR | 0 ~ 255文字 | 固定長文字列 | CHAR(20) 20文字に満たない場合は半角空白で保持 取り出す際に空白は削除される |
VARCHAR | 0 ~ 65,535文字 | 可変長文字列 | VARCHAR(20) 20文字に満たない場合でもそのまま保存 取り出す際に末尾に空白があっても 保持される |
TEXT | 0 ~ 65,535文字 | テキスト型 | 大きなテキストデータの際に使用 (VARCHARの代用) |
BINARY | 0 ~ 255文字 | 固定長バイナリ文字列 | |
VARBINARY | 0 ~ 65,535文字 | 可変長バイナリ文字列 | 小さいデータに向いている |
BLOB | 0 ~ 65,535文字 | バイナリオブジェクト | 大きなデータに向いている (VARBINARYの代用) |
ENUM | 特定の文字列から1つ | ||
SET | 特定の文字列から複数 |
日時
DATE | 日付 | YYYY-MM-DD |
TIME | 時間 | hh:mm:ss |
DATETIME | 日時 | YYYY-MM-DD hh:mm:ss |
コメント