ゼロから始めるプログラム言語サイトのトップへ

第14回 SQL編 第1話 倉庫を建てたら、まず棚の話になった

第14回。全3ページを続けて読めます。

学習レクチャー・2026年9月15日更新

第14回 SQL編 第1話
倉庫を建てたら、まず棚の話になった

データを残す場所

Pythonに在庫確認を頼めるようになった。

しかし、毎回コードを開いて在庫数を書き直すのは、少し面倒だ。

KAZU「昨日は4だったけど、今日は3。明日は納品で増える。これ、どこかにまとめて置けない?」

そこで登場したのが、データベースだった。

SQL「倉庫の準備ですね。」

KAZU「あなたが倉庫?」

SQL「私は倉庫へ指示を出すための言葉です。」

データベースが情報を保存して管理する仕組み。SQLは、その中の情報を取り出したり変更したりするための言語だ。

倉庫と、倉庫への頼み方は別だった。

学習レクチャー・2026年9月15日更新

第14回 SQL編 第1話
倉庫を建てたら、まず棚の話になった

表・行・列を知る

まずは在庫表を見てみよう。

iditemstock
1手袋4
2ペーパー9
3ゴミ袋2

このような表を「テーブル」と呼ぶ。ここでは supplies という名前をつけることにする。

横一列が「行」。一件分のデータだ。縦の項目が「列」。この表にはid、item、stockという三つの列がある。

KAZU「表なら、Excelでも見たことがある。」

SQL「その感覚は役に立ちます。まずは一行に何を入れるか、各列が何を意味するかをそろえましょう。」

学習レクチャー・2026年9月15日更新

第14回 SQL編 第1話
倉庫を建てたら、まず棚の話になった

データの区別と実習

では、一番左のidは何だろう。

これは、それぞれの行を区別するための番号だ。同じような品名があっても、どの行を指しているかをはっきりさせられる。

KAZU「手袋って名前で分かるんじゃない?」

SQL「SサイズとMサイズがあったら?」

KAZU「小さい手袋と、普通の手袋。」

SQL「普通とは?」

また出た。プログラムの世界では「普通」がなかなか通用しない。

実際の管理では、サイズや単位なども項目として持たせると、意味がはっきりする。表に情報を詰め込む前に、何をどう区別するかを考えるのが大切なのだ。

なお、先ほどのPythonの辞書は、あの例だけではプログラム終了後に変更をファイルへ保存しない。残しておきたい情報には、ファイルやデータベースへ保存する処理が必要になる。

KAZU「覚えてくれたと思ったのに、帰ると忘れるのか。」

SQL「だから、記録を残す場所を用意します。」

人もプログラムも、申し送りの仕組みが大切らしい。

【ミニテスト】

表の「一件分のデータ」に当たるのは?

A.行
B.列
C.テーブル名

答え:A。列は品名や在庫数などの項目を表す。

【小さな実習】

自分の在庫表を作るなら、何の列が必要か考えよう。「品名」「在庫数」に加えて「単位」があると、4箱なのか4枚なのかを区別できる。