WHERE句の条件(AND・OR・IN・BETWEEN・IS NULL)
更新日:
用語解説
WHERE句の条件は、比較演算子(=、<>、<、>=など)と、AND・OR・NOTやIN・BETWEEN・LIKE・IS NULLなどの演算子を組み合わせて書きます。
■ 試験で押さえるポイント
ANDは両方の条件を満たす行、ORはどちらかの条件を満たす行を残します。1つの列が同時に2つの値になることはないので、仕入先ID = 'M002' AND 仕入先ID = 'M004' に当てはまる行はありません。
列 IN ('M002', 'M004') は、列 = 'M002' OR 列 = 'M004' と同じ意味です。
列 BETWEEN 'M002' AND 'M004' は、列 >= 'M002' AND 列 <= 'M004' と同じで、両端の値を含みます。間にある 'M003' も対象になります。
NULLかどうかは 列 IS NULL、列 IS NOT NULL で調べます。列 = NULL と書いても、どの行にも当てはまりません。
列 LIKE '山%' は文字列のパターンに一致する行を残します(%は0文字以上の任意の文字列、_は任意の1文字)。
条件の書き方 | 同じ意味の書き方 |
|---|---|
列 IN (a, b) | 列 = a OR 列 = b |
列 NOT IN (a, b) | 列 <> a AND 列 <> b |
列 BETWEEN a AND b | 列 >= a AND 列 <= b |
列 IS NULL | 列の値が空(NULL) |
■ 選択肢での判断ポイント
INはORに、BETWEENは両端を含む範囲の条件に置き換えて比べます。NULLとの比較は、IS NULLを使っている選択肢だけが意図どおりに動きます。