1. 数値型
型 | 最小値 | 最大値 | サイズ |
---|---|---|---|
TINYINT | -128 | 127 | 1Byte |
TINYINT UNSIGNED | 0 | 255 | 1Byte |
SMALLINT | -32768 | 32767 | 2Byte |
SMALLINT UNSIGNED | 0 | 65535 | 2Byte |
MEDIUMINT | -8388608 | 8388607 | 3Byte |
MEDIUMINT UNSIGNED | 0 | 16777215 | 3Byte |
INT | -2147483648 | 2147483647 | 4Byte |
INT UNSIGNED | 0 | 4294967295 | 4Byte |
BIGINT | -9223372036854775808 | 9223372036854775807 | 8Byte |
BIGINT UNSIGNED | 0 | 18446744073709551615 | 8Byte |
FLOAT(精度,位取り) *1 |
-3.402823466E+38 | 3.402823466E+38 | 4Byte |
DOUBLE(精度,位取り) REAL(精度,位取り) *1 |
-1.7976931348623157E+308 | 1.7976931348623157E+308 | 8Byte |
DECIMAL(精度[,位取り]) DEC(精度[,位取り]) NUMERIC(精度[,位取り]) *1 (位取り省略時は0) |
– | – | 位取り > 0: 精度+2Byte 位取り = 0: 精度+1Byte |
*1 例)「1234.56」→「精度6、位取り2」
2. 文字列型
型 | 説明 |
---|---|
CHAR(n) CHARACTER(n) |
固定長文字列 最大255文字まで 格納される文字が指定サイズより小さい場合は右スペース埋めされる。 |
CHAR | CHAR(1)と等価 |
VARCHAR(n) | 可変長文字列 最大65535Byte (64KB) |
TINYTEXT *1 | 可変長文字列 最大255Byte |
TEXT *1 | 可変長文字列 最大65535Byte (64KB) |
MEDIUMTEXT *1 | 可変長文字列 最大16777215Byte (16MB) |
LONGTEXT *1 | 可変長文字列 最大4294967295Byte (4GB) |
*1 TEXT型にインデックスを設定する場合は長さの指定が必要になる。
CREATE TABLE fuga_tbl (uho_col TEXT);
CREATE INDEX hoge_idx ON fuga_tbl (uho_col(10));
3. 日付/時刻型
型 | 属性 | 説明 | サイズ |
---|---|---|---|
DATE | 日付 | 範囲: BC4713 ~ AD32767 入力形式: ‘YYYY-MM-DD’, ‘YYYY/MM/DD’, ‘YYYYMMDD’ |
4Byte |
DATETIME | 日時 | 範囲: ‘1000-01-01 00:00:00’ ~ ‘9999-12-31 23:59:59’ 入力形式: ‘YYYY-MM-DD HH:MM:SS’, ‘YYYY/MM/DD HH:MM:SS’, ‘YYYYMMDDHHMMSS’ |
8Byte |
TIMESTAMP | 日時 | 範囲: ‘1970-01-01 00:00:00’ ~ ‘2037-12-31 23:59:59’ 入力形式: DATETIMEと同じ ・範囲が2037年末までなので新規案件では使用しない。 ・最初のTIMESTAMP型カラムには"CURRENT TIMESTAMP ON UPDATE CURRENT TIMESTAMP"が設定される。 ・他にも癖があるので特に理由がなければDATETIMEを使用する。 |
4Byte |
TIME | 時刻 | 時刻範囲: ‘-838:59:59’ ~ ‘838:59:59’ 入力形式: ‘HH:MM:SS’, ‘HHMMSS’, ‘HH:MM’, ‘HHMM’, ‘D HH:MM:SS’, ‘D HHMMSS’, ‘D HH:MM’, ‘D HHMM’, (Dは日付 0 〜 33) |
3Byte |
YEAR[(4/2)] | 年 | 範囲: ‘1901’ ~ ‘2155’(4桁形式), ‘1970’ ~ ‘2069’(2桁形式) 入力形式: ‘YYYY’(4桁形式), ‘YY’(2桁形式) |
1Byte |
4. ビット型
型 | 説明 |
---|---|
BIT(n) | n bitの固定長bit列 nは1〜64 |
BIT | BIT(1)と等価 |
BOOL | TINYINT(1)と等価 |
BOOLEAN | TINYINT(1)と等価 |