過去問解きまくり研究所 ホーム

平成25年度 春期 午前 問29

データベース

LIKEに関する問題

“BOOKS” 表から書名に “UNIX” を含む行を全て探すために次の SQL 文を用いる。a に指定する文字列として,適切なものはどれか。ここで,書名は “BOOKS” 表の “書名” 列に格納されている。

SELECT * FROM BOOKS WHERE 書名 LIKE '[ a ]'
答えと解説を見る

✓ これが正解イ%UNIX%

解説

含むという条件なので語の両側に記号を置きます。

あいまいな一致を指定する句では、百分率の記号が0文字以上の任意の文字列を表します。この記号をどこに置くかで意味が変わるのが要点です。設問が求めているのは、書名のどこかにその語が現れる行をすべて集めることです。つまり語の前にも後ろにも何か続いていてよい、と表す必要があります。そこで語の両側にこの記号を添えます。片側だけに置いた場合は、その語が書名の端に来る行しか集まりません。まったく置かなければ、書名がその語と過不足なく同じ行だけが対象になります。判定の軸は一つで、語の前と後ろの両方に文字が続くことを許しているかどうかです。例として入門という言葉が前後に付いた書名を思い浮かべると、両側に置いた形だけが拾えると分かります。

ほかの選択肢はなぜ違うのか

出典:平成25年度 春期 基本情報技術者試験 午前 問29(改変:原典の図表をテキストに書き起こした)

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)