1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SQL WHERE句に書けるもの、書けないもの

Last updated at Posted at 2019-09-14

WHERE句はテーブルから情報を取得する際に、条件をつけることができます。

販売単価を取得したい、条件として価格が100円以上のものとしたい場合、

SELECT hanbai_tanka
FROM Shohin
WHERE hanbai_tanka > 100

いろんな条件で取得したい時、ついついWHERE句に全て詰め込みたいところですが、

WHERE句になんでも書くことができる訳ではありません。

WHERE句に書けるのは「条件式のみ」です。

真・偽の条件式で、もともとテーブルにある行のみです。

例えば、SUMは行の数字を足し合わせる、COUNTは行数を数えるなどテーブルに何か加工して別の数字として引数が帰ってきますので使えません。単価が300円と500円の2行のテーブルがあったとして、合計の800円を取得したいということはできません。取得できるのは800円と300円のみです。

下記、WHERE句に書けるもの、書けないものをまとめます。

書けるもの

比較演算子

・IS NULL

・IS NOT NULL

・LIKE

・BETWEEM

・IN

・ANY

・ALL

・=, <, >, <=, >=, <>

論理演算子

・AND

・OR

・NOT

書けないもの

四則演算

・+, ー, *, /

下記の関数など

・SUM

・COUNT

・AVG

etc...

関数でも、例えば下記のLENとかは使えます

SELECT shohin_mei
FROM Shohin
WHERE LEN(shohin_mei) > 3

上でも書きましたが、要は条件式になるかどうかです。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?