とにかくSQLを楽しく、効率的に学ぼうという趣旨の記事です。
今回はWHERE句を使って条件を指定して抽出を行う方法について、わかりやすく解説します!
目次
WHEREを使うと条件を設定できる!
入門①ではSELECTを使い、指定の列を抽出しました。
今回はSELECTに条件を追加して抽出する方法の解説です。
利用するのはWHEREです。
SELECT 列名
FROM テーブル名
WHERE 条件式;
SQLBOLTのLESSON2ですね。
SQLBolt – Learn SQL – SQL Lesson 2: Queries with constraints (Pt. 1)
SQLBolt provides a set of interactive lessons and exercises to help you learn SQL
比較演算子一覧
演算子 | 説明 |
---|---|
= | 等しい |
!= <> | 等しくない |
> | 大きい |
< | 小さい |
>= | 以上 |
<= | 以下 |
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;
おわり
今回は単純な条件式のみでした。
次回は少し複雑な正規表現を使って、”含む”を再現します。
次回
【文系向けSQL入門③】LIKEを使ってあいまい検索条件を設定する方法!
とにかくSQLを楽しく、効率的に学ぼうという趣旨の記事です。今回はLIKEを使ってあいまい検索条件を設定し、抽出を行う方法についてわかりやすく解説します! 【あいま…
前回
【文系向けSQL入門①】学習サイト「SQL Bolt」を使って無料で効率よくSQLを学ぼう!
とにかくSQLを楽しく、効率的に学ぼうという趣旨の記事です。「SQL Bolt」という非常に便利なサイトがあったので、それを活かして学んでいきます。 【そもそもSQLってな…
Audible (オーディブル) – 本を聴くAmazonのサービス
読んでくれてありがとう!
コメント