ぽかぽかコード日和

とっても暑い夏の日にプログラミングはじめました☀️

【SQL】データ型一覧

データベースに保存されているデータにはデータ型と呼ばれるルールがあり、どのように保存され、処理されるかが決まっている。

  • テーブルを作成するときにそれぞれの列(カラム)にデータ型を指定しており、その形式のデータしか入力できない。

  • データ型の選択は、
    データの正確さ・保存効率・検索や処理の速度など、システム全体のパフォーマンスに直結する。

  • SQLのデータ型はRDBMS(MySQL等)ごとに細かな違いがある。

SQLの代表的なデータ型

1.数値型

データ型名 カテゴリ 用途
INT(INTEGER) 整数型 整数のみ(固定長) 主キーやIDなど小数点が出ない値
REAL 浮動小数点型
(単精度)
約7桁精度 ほぼFLOATと同じ
計算速度重視
FLOAT 浮動小数点型
(単精度)
約7桁精度 計算速度重視
DOUBLE型 浮動小数点型
(倍精度)
約15桁精度 FLOATより高精度な小数計算
DECIMAL 固定小数点型 桁数を指定できる 正確な数値の計算
NUMERIC 固定小数点型 桁数を指定できる 正確な数値の計算

2.文字列型

データ型名 カテゴリ 用途
CHAR 固定長 文字列の長さが常に一定 性別
VERCHAR 可変長 文字列の長さが不定 住所やメール
  • CHAR型(固定長)では、
    指定された長さに満たないときは空白で埋められ、常にその長さ分のストレージを消費する。

  • VARCHAR型(可変長)では、
    実際に格納される文字列の長さに応じて長さが変わるため、ストレージ効率が高い。

3.日付時刻型

データ型名 用途
TIMESTAMP YYYY-MM-DD HH:MM:SS データの作成・更新時刻の自動記録
DATETIME YYYY-MM-DD HH:MM:SS 任意の日時データ
DATE YYYY-MM-DD 年月日のみ
TIME HH:MM:SS 時刻のみ

4.論理値型

データ型名 用途
BOOLEAN 0, 1 0(FALSE)か1(TRUE)のみ
  • MySQLでは整数(-128~127)も格納できるため、正確な真偽値ではない。

参考にしたサイト