ウカマル応用情報技術者ログイン

平成27年度 春期 応用情報技術者 問26

テクノロジ系

“電話番号”列にNULLを含む“取引先”表に対して,SQL文を実行した結果の行数は幾つか。

取引先

取引先コード取引先名電話番号
1001A社010-1234-xxxx
2001B社020-2345-xxxx
3001C社NULL
4001D社030-3011-xxxx
5001E社(010-4567-xxxx)

〔SQL文〕

SELECT * FROM 取引先 WHERE 電話番号 NOT LIKE '010%'
選択肢
正解と解説

正解 ウ

NULLとの比較は真にも偽にもならない不定(UNKNOWN)なので、C社の行は選ばれません。E社の値は'('で始まるため'010%'に一致せず、結果はB社、D社、E社の3行です。

LIKE '010%'は「010で始まる文字列」に一致します。NOT LIKEは、一致しない行を選びます。A社は010で始まるので除かれます。B社(020)とD社(030)は選ばれます。E社は先頭が'('なので'010%'に一致せず、選ばれます。C社はNULLで、比較の結果がUNKNOWNになり、WHERE句では選ばれません。結果は3行です。

ア:NOT LIKEで選ばれるのは、B社、D社、E社の3行です。1行になる行の数え方はありません。

イ:E社の値は'('で始まるので、'010%'には一致しません。E社も結果に含まれます。

エ:NULLに対するNOT LIKEは真ではなくUNKNOWNになります。C社の行は結果に含まれません。

出典:平成27年度 春期 応用情報技術者試験 問26

全年度から出題。10問で実力を判定します。登録不要。

出典:平成27年度 春期 応用情報技術者試験 問26(独立行政法人情報処理推進機構)

解説と用語ページは生成 AI が書き、別の生成 AI が確かめています。作り方