【れこーど】

レコード(行) とは?

最終更新:
💡 テーブルの中の「1件分のデータ」

データベースのテーブルにおける1行分のデータのこと。1人のユーザー情報や1件の注文情報など、1つのまとまったデータ単位を表す。

📌 このページのポイント
テーブルの横1行が、1レコードusers:ユーザーのテーブル例id名前年齢1田中252鈴木353佐藤42橙の行:id=2、名前=鈴木、年齢=35縦の列は「名前」「年齢」などの項目
ユーザーテーブルの例。橙の横1行が1件分のデータです。idは主キーを設定した例で、全てのテーブルに必須ではありません。図の上下の位置は保存順や検索結果の順序を保証しません。
ひよこ ひよこ
レコードと行って別物?
ペンギン先生 ペンギン先生
テーブルの話では、どちらも横方向の1行分を指すよ。ユーザーテーブルなら「id=1、名前=田中、年齢=25」というまとまりが1レコード。名前や年齢のような項目が列なんだ
ひよこ ひよこ
各行には必ず主キーがあるの?
ペンギン先生 ペンギン先生
主キーを設定しないテーブルもあるよ。例えばPostgreSQLでは主キーは必須ではなく、同じ内容の行も存在できる。主キーを設定すれば、その値で各行を一意に識別できるんだ。主キーは複数の列を組み合わせる場合もあるよ
ひよこ ひよこ
レコードの追加や削除ってどうやるの?
ペンギン先生 ペンギン先生
例えばidを主キーにしたusersテーブルなら、追加はINSERT INTO users (id, name, age) VALUES (1, '田中', 25)、更新はUPDATE users SET age = 26 WHERE id = 1、削除はDELETE FROM users WHERE id = 1だよ。UPDATEとDELETEでWHEREを省くと全行が対象になるんだ
ひよこ ひよこ
WHEREを書けば必ず1件だけ変わる?
ペンギン先生 ペンギン先生
条件次第だよ。該当する行がなければ0件、年齢などの条件なら複数行が対象になることもある。主キーの値を指定して1件を選ぶ例と、条件に合う全行を選ぶ操作を区別しよう
ひよこ ひよこ
テーブルの上から順に取り出せるの?
ペンギン先生 ペンギン先生
検索結果の順序は、並べ替えを指定しないと保証されないよ。例えばSELECT * FROM users ORDER BY idならid順を指定できる。図の上下の位置そのものが、行の識別子や保存順を意味するわけではないんだ
ひよこ ひよこ
レコードが大量にあると検索は遅くなる?
ペンギン先生 ペンギン先生
件数だけでは決まらず、検索条件やデータ量、機器などにもよるよ。インデックスが役立つ検索もあるけれど、挿入や更新の負担も増える。全行を見る方が効率的な場合もあり、インデックスを付ければ全ての検索が速くなるわけではないんだ
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
レコードって出てきたら「テーブルの中の1件分のデータ、つまり1行のこと」と思えばだいたいOK!
📖 おまけ:英語の意味
「Record / Row」 = 記録 / 行
💬 Record は「記録」、Row は「行」。どちらもテーブルの横1行を指す同義語

参考資料

← 用語集にもどる