SQL WHERE句


WHERE句はレコードをフィルタリングするために使用されます。


SQL WHERE句

WHERE句は、指定された条件を満たすレコードを抽出するために使用されます。

SQL WHERE構文

SELECT column1, column2, ...
FROM table_name
WHERE condition;

パラメータの説明:

  • column1, column2, ...:選択するフィールド名。複数のフィールドを指定できます。フィールド名を指定しない場合は、すべてのフィールドが選択されます。
  • table_name:クエリするテーブル名。


デモデータベース

このチュートリアルでは、サンプルサンプルデータベースを使用します。

以下は "Websites" テーブルから選択されたデータです:

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | サンプル      | http://www.example.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
+----+--------------+---------------------------+-------+---------+


WHERE句の例

次のSQL文は、"Websites" テーブルから国が "CN" であるすべてのWebサイトを選択します。

例

SELECT * FROM Websites WHERE country='CN';

実行出力結果:



テキストフィールド vs. 数値フィールド

SQLでは、テキスト値を囲むために一重引用符を使用します(ほとんどのデータベースシステムでは二重引用符も受け入れられます)。

前の例では、'CN' テキストフィールドに一重引用符が使用されました。

数値フィールドの場合は、引用符を使用しないでください。

例

SELECT * FROM Websites WHERE id=1;

実行出力結果:



WHERE句内の演算子

次の演算子はWHERE句で使用できます:

演算子 説明
= 等しい
<> 等しくない。注記:SQLの一部のバージョンでは、この演算子は != と記述できます。
> より大きい
< より小さい
>= 以上
<= 以下
BETWEEN 特定の範囲内
LIKE 特定のパターンを検索
IN 特定の列に対する複数の可能な値を指定
その他の拡張