“電話番号”列にNULLを含む“取引先”表に対して、SQL文を実行した結果の行数は幾つか。
取引先
取引先コード |
取引先名 |
電話番号 |
1001 |
A社 |
010-1234-xxxx |
2001 |
B社 |
020-2345-xxxx |
3001 |
C社 |
NULL |
4001 |
D社 |
030-3011-xxxx |
5001 |
E社 |
(010-4567-xxxx) |
|
[SQL文]
SELECT * FROM 取引先 WHERE 電話番号 NOT LIKE ‘010%’
答え ウ
【解説】
LIKE演算子ではワイルドカードを使用することが可能で、主なワイルドカードとして
- *、%
0文字以上の任意の文字列
- ?、_
任意の一文字
- #
任意の半角の1数字
- [ ]
[ ]内の文字リストに含まれる全角、または半角の1文字
- [! ]
[! ]の文字リストに含まれない全角、または半角の1文字
があり、問題のSQL文ではワイルドカードとして“%”が使われていて、“NOT LIKE”と否定なので、電話番号として“010”から始まる取引先とNULLの値を持つ項目を除いた
取引先
取引先コード |
取引先名 |
電話番号 |
2001 |
B社 |
020-2345-xxxx |
4001 |
D社 |
030-3011-xxxx |
5001 |
E社 |
(010-4567-xxxx) |
|
の 3件(ウ)になります。
【キーワード】
・LIKE演算子
【キーワードの解説】
- LIKE演算子
SQL文のWHERE句で検索条件を指定するときにLIKE演算子を使用すると、ある文字列の中で特定の文字が含まれている場合など不確定な条件検索である、あいまい検索を行うことができます。
もっと、「LIKE演算子」について調べてみよう。
戻る
一覧へ
次へ
|