Help us understand the problem. What is going on with this article?

レコードを検索

More than 3 years have passed since last update.

SELECT・FROM

SELECT文の最も基本的な構文は次のような形です。

※SELECT 句の実行順序
FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY

SELECT 列名 FROM テーブル名

SELECT句では、si.shop_idやi.item_nameのようにテーブル別名.列名という記述のしかたをします。これは、テーブルが 1 つだけの場合と違って、結合の場合、どの列をどのテーブルから持ってきているかが不明瞭になりやすいため、それを防ぐための措置です。

この形式で記述をしなければならないのは、2つのテーブルに存在している列(ここではitem_id)のみであり、他の列は「shop_id」のように列名だけ書いてもエラーにはなりません。しかし、前述のように混乱を避けるという理由から、結合の場合は SELECT 句の全ての列を<テーブルの別名>.<列名>の書式で書くようにすることが望ましい。

WHERE

WHERE句を使用して条件を指定することで、取得したいデータのみを取得することができます。

SELECT 列名1 ,列名2, ...
FROM テーブル名
WHERE 条件式

条件式は列名と演算子、関数などを使用して表現します。以下の例をご覧下さい。従業員テーブルから年齢が20歳以上の従業員名を取得しています。

SELECT 従業員名
FROM 従業員
WHERE 年齢 >= 20
比較演算子 説明
= 等しい
< 小さい
> 大きい
<= 以下
>= 以上
<>, != 等しくない

論理演算子を使用することでWHERE句の中で複数の条件を指定することができます。 以下の例をご覧下さい。従業員テーブルから年齢が20歳以上かつ性別が男性の従業員名を取得しています。

SELECT 従業員名
FROM 従業員
WHERE 年齢 >= 20
  AND 性別 = '男性'

WHERE句で使用できる論理演算子には以下のようなものがあります。
WHERE句で使用できる論理演算子

論理演算子 説明
AND 論理積, ○○かつ○○
OR 論理和, ○○または○○
NOT 否定, ○○でない
adevalue
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away