【文系向けSQL入門②】WHEREを使って検索条件を設定する方法!

とにかくSQLを楽しく、効率的に学ぼうという趣旨の記事です。
今回はWHERE句を使って条件を指定して抽出を行う方法について、わかりやすく解説します!

目次

WHEREを使うと条件を設定できる!

入門①ではSELECTを使い、指定の列を抽出しました。
今回はSELECTに条件を追加して抽出する方法の解説です。

利用するのはWHEREです。

SELECT 列名
FROM テーブル名
WHERE 条件式;

SQLBOLTのLESSON2ですね。

比較演算子一覧

演算子説明
=等しい
!=
<>
等しくない
>大きい
<小さい
>=以上
<=以下
BETWEEN … AND …範囲内なら真
NOT BETWEEN … AND …範囲外なら真
IN(…)指定のリストに載っていれば真
NOT IN (…)載っていなければ真
ごり子

ちなみに大文字小文字は気にしなくていいよ!

指定の列の、指定の項目だけ抽出

都道府県県庁所在地人口
A県A市50000
B県B市20000
C県C市30000
日本の都市

上記の表から、B県だけを抜き取ってみます。

SELECT * FROM 日本の都市
WHERE 都道府県 = "B県";
ごり子

文字の場合は””で囲むよ!
数字はそのままでOK!

範囲を指定して抽出

人口が20000から30000の間で抽出します。

SELECT * FROM 日本の都市
WHERE 人口 BETWEEN 20000 AND 30000;

自分でリストを作って指定

A市とC市だけ抽出します。

SELECT * FROM 日本の都市
WHERE ID IN ("A市","C市");

NOTを使うと逆になるので

SELECT * FROM 日本の都市
WHERE ID NOT IN ("B市");

このように逆接的に抽出することもできます。

Lesson 2の和訳と解答

①Find the movie with a row id of 6
ID行が6の映画だけ探して。

SELECT * FROM movies
WHERE id = 6;

②Find the movies released in the years between 2000 and 2010
2000年から2010年の間にリリースされた映画を探して。

SELECT * FROM movies
WHERE year BETWEEN 2000 AND 2010;

③Find the movies not released in the years between 2000 and 2010
2000年から2010年の間にリリースされてない映画を探して。

SELECT * FROM movies
WHERE year NOT BETWEEN 2000 AND 2010;

④Find the first 5 Pixar movies and their release year
ピクサー映画のうち、最初に公開されたに5本を探して

SELECT * FROM movies
WHERE ID BETWEEN 1 AND 5;

おわり

今回は単純な条件式のみでした。
次回は少し複雑な正規表現を使って、”含む”を再現します。

次回

前回

ビジネスパーソンがいま読むべき本を厳選!

Audible (オーディブル) – 本を聴くAmazonのサービス

オーディオブック聴き放題なら – audiobook.jp

ごり子

読んでくれてありがとう!

コメント

コメントする

目次