修了試験 2022-01-23実施分 基本情報技術者試験 問27
"学生"表と"学部"表に対して次のSQL文を実行した結果として,正しいものはどれか。 〔学生〕 氏名/所属/住所 応用花子/理/新宿 高度次郎/人文/渋谷 午前桜子/経済/新宿 情報太郎/工/渋谷 〔学部〕 学部名/住所 工/新宿 経済/渋谷 人文/渋谷 理/新宿 〔SQL文〕 SELECT 氏名 FROM 学生, 学部 WHERE 所属 = 学部名 AND 学部.住所 = '新宿'
正答3
解説
正解は3です。 SQL文は、学生表と学部表を「所属=学部名」で結合し、学部表の住所が新宿である行の氏名を取り出します。 条件に使われているのは学部.住所であり、学生の住所ではない点に注意します。 【計算】 学部表で住所が新宿の学部は、工と理です。 学生表で所属が理の学生は、応用花子です。 学生表で所属が工の学生は、情報太郎です。 したがって、結果は応用花子と情報太郎です。 【選択肢別解説】 1:× 応用花子だけでは、工学部に所属する情報太郎が抜けています。 工学部の住所も新宿です。 2:× 午前桜子は学生の住所が新宿ですが、所属する経済学部の住所は渋谷です。 条件は学部の住所なので含まれません。 3:○ 学部の住所が新宿である理と工に所属する、応用花子と情報太郎が結果になります。 4:× 午前桜子を含めている点が誤りです。 経済学部の住所は渋谷なので条件を満たしません。 【ポイント】 結合した表に同じ列名があるときは、「表名.列名」でどちらの列かを区別します。 条件の列がどの表のものかを必ず確認します。まとめて解く
修了試験 2022-01-23実施分を通しで解く(80問)→