取り出す・絞り込む

INPUT · スライド

条件に合う行だけ

01 / 05

全部はいらない

ここまでのクエリは、いつもテーブルの全レコードを返していた。カラムは選べても、行は選べていなかったんだ。

でも実際にほしいのは「4番の商品」「200円の商品」のように、条件に合う行だけのことがほとんどだよ。

02 / 05

WHEREの形

FROM テーブル名 のうしろに WHERE 条件 を足すと、条件に合うレコードだけが返ってくる。

読み方は「stocks から 全部を選ぶ、ただし id が 4 のもの」。うしろから条件をつけ足す感じだよ。

SELECT * FROM stocks WHERE id = 4;

実行結果

4 | ものさし | 150 | ほしや工房 | 12

03 / 05

「等しい」はイコール1つ

SQLの「等しい」は = を1つだけ書く。JavaScriptの === とは違うので、ここは切りかえよう。

SQLには「値を入れる」という意味の = が出てこないから、1つで迷わないんだ。

SELECT * FROM stocks WHERE amount = 8;

実行結果

5 | いろえんぴつ | 480 | みどり文具 | 8

04 / 05

当てはまる行が複数のことも

条件に合うレコードが2つ以上あれば、その全部が返ってくる。1件だけ返る保証はないよ。

逆に1つも当てはまらなければ、結果は空っぽ。エラーではなく「0件」という答えだよ。

SELECT * FROM stocks WHERE price = 200;

実行結果

2 | ノート | 200 | あおば紙店 | 25
6 | クリップ | 200 | ほしや工房 | 100

05 / 05

行と列を両方えらぶ

SELECTを選び、WHEREを選ぶ。この2つを組み合わせれば、表のほしいところだけを切り出せるよ。

ここから書いてみよう。

SELECT item, price FROM stocks WHERE id = 1;

実行結果

えんぴつ | 120