SELECT文の基本構文
SELECT文とは、データベースからデータを抽出するための命令文です。
SELECT 列名 FROM テーブル名 WHERE 条件
以下の設定されたテーブル(user) を元にします。
カラム名 | データ型 | その他 |
id | INT | 主キー |
name | VARCHAR (50) | NULL許容しない |
address | VARCHAR (255) | |
age | INT |
特定の列を抽出する
特定の列を抽出したい場合は「select 列名」に抽出したい列名を指定します。
SELECT name FROM user;
name を抽出できます。
複数の列を抽出する
複数の列を抽出したい場合は「select 列名1, 列名2,・・・」とカンマ区切りで列名を指定します。
SELECT name, address FROM user;
name と address を抽出できます。
すべての列を抽出する
すべて列を抽出したい場合は「select *」とアスタリスクで指定します。
SELECT * FROM user;
「WHERE」で条件を指定する
WHERE句には、次の比較演算子を用いて条件を指定することができます。
比較演算子 | 使用例 | 説明 |
= | age = 20 | 20歳と等しい |
> | age > 20 | 20歳より大きい(20歳は含まない) |
>= | age >= 20 | 20歳以上(20歳を含む) |
< | age < 20 | 20歳未満(20歳は含まない) |
<= | age <= 20 | 20際以下(20歳を含む) |
<>(!=) | age <> 20(age != 20) | 20歳以外 |
抽出する条件を指定する
抽出する条件を指定するには「WHERE 条件」に、条件を指定します。
SELECT * FROM user WHERE age < 30;
age が 30未満(30は含まない)抽出できます。
抽出する条件を複数指定する
抽出する条件を複数しているには「AND」もしくは「OR」もしくは「NOT」を使用します。
論理演算子 | 使用例 | 説明 |
AND | A AND B | A かつ B |
OR | A OR B | A または B |
NOT | NOT(A) | Aではない |
SELECT * FROM user WHERE age < 50 AND address != '東京都渋谷区';
ANDの例 (年齢「50歳未満」 かつ 住所が「東京都渋谷区」以外のデータを抽出できます。)
SELECT * FROM user WHERE age = 22 OR address = '東京都渋谷区';
ORの例(年齢が「22歳」または 住所が「東京都渋谷区」のデータを抽出できます。)
「ORDER BY」でソートする
SELECT文で抽出したデータをソートするには「ORDER BY 列名 ASC(またはDESC)」を使用します。
※ASCが昇順、DESCが降順。
SELECT * FROM user ORDER BY age ASC;
※昇順 ASCは省略可です。
SELECT * FROM user ORDER BY age DESC;
学習書の紹介
SQLの絵本 第2版 データベースが好きになる新しい9つの扉 [ 株式会社アンク ] 価格:1,958円 |
SQLの絵本 第2版 データベースが好きになる新しい9つの扉
データベースは沢山のデータを管理するためのソフトで、データの登録/変更/削除を確実にし、多数のユーザーからの操作を受け付ける仕組みが備わっています。
このデータベースを操作するための言語がSQLです。
本書は「そもそもデータベース(リレーショナルデータベース)とは
どういうものであるか」から解説を始めます。基礎知識を身につけ、
データの操作を実際に試して学ぶことができる一冊です。
学習書のお求めはこちらから → IT開発関連書とビジネス書が豊富な翔泳社の通販『SEshop』