本文へスキップ

令和6年度 ITパスポート試験 問93

この問題の解説と、これまでの解答の記録です。

問93
頻出度★★☆

関係データベースで管理している“従業員”表から,氏名が‘%葉_’に該当する従業員を抽出した。抽出された従業員は何名か。ここで,“_”は任意の1文字を表し,“%”は0文字以上の任意の文字列を表すものとする。 従業員

従業員番号氏名
S001千葉翔
S002葉山花子
S003鈴木葉子
S004佐藤乙葉
S005秋葉彩葉
S006稲葉小春
出典 令和6年度 ITパスポート試験 問93
解説

問 93

  • 不正解ア

    1名では数え漏れです。条件に合うのは千葉翔だけでなく鈴木葉子も該当し、合計2名になります。葉が後ろから2文字目に来る氏名を1件しか拾えていない誤りです。

  • イ

    正解 パターン「%葉_」は、ワイルドカードの定義より『%(0文字以上の任意文字列)+葉+_(任意の1文字)』と読み解けます。つまり「最後から2番目の文字が葉で、その後ろにちょうど1文字だけ続く氏名」が抽出条件です。各行を当てはめると、千葉翔(千/葉/翔:葉の後ろは翔の1文字)と鈴木葉子(鈴木/葉/子:葉の後ろは子の1文字)の2件だけがこの形に一致します。よって抽出される従業員は2名で、正解はイです。

  • 不正解ウ

    3名は数え過ぎです。佐藤乙葉は葉が最後の文字で、その後ろに1文字(_)が無いため不一致。葉で終わる氏名を誤って含めると過剰になります。

  • 不正解エ

    4名は数え過ぎです。葉山花子・秋葉彩葉・稲葉小春はいずれも葉の後ろに2文字以上続き、_(ちょうど1文字)の条件を満たしません。葉を含むだけの氏名まで数えた誤りです。

ここがポイント
  • ワイルドカード「_」は任意の1文字ちょうど、「%」は0文字以上の任意文字列を表す。両者の長さの違い(1文字固定か可変か)を正確に区別することが要点。
  • パターンが文字列の末尾でどう一致するかを意識する。「%葉_」は『葉の直後に1文字だけ残る』形なので、葉で終わる名や葉の後ろに2文字以上続く名は除外される。
用語

解答の記録