基本情報技術者試験 基本情報技術者試験 令和3年度 科目A 修了認定試験 午前 問25: 関係 "注文記録" の属性間に ①〜⑥ の関数従属性があり、それに基づいて第 3 正規形まで正規化を行って、"商品"、"顧客"、"注文"、"注文明細" の各関係

基本情報技術者試験 令和3年度 科目A 修了認定試験
Q 2525 / 80
関係 "注文記録" の属性間に ①〜⑥ の関数従属性があり、それに基づいて第 3 正規形までを行って、"商品"、"顧客"、"注文"、"注文明細" の各関係に分解した。関係 "注文明細" として、適切なものはどれか。ここで、{X, Y} は、属性 X と Y の組みを表し、X→Y は、X が Y を関数的に決定することを表す。また、実線の下線は主キーを表す。 注文記録(注文番号、注文日、顧客番号、顧客名、商品番号、商品名、数量、販売単価) 〔関数従属性〕 - ① 注文番号 → 注文日 - ② 注文番号 → 顧客番号 - ③ 顧客番号 → 顧客名 - ④ {注文番号、商品番号} → 数量 - ⑤ {注文番号、商品番号} → 販売単価 - ⑥ 商品番号 → 商品名
この問の正解率:42.90%(1,359件)
この問題の本文・選択肢・正解・解説(展開)

問題本文

関係 "注文記録" の属性間に ①〜⑥ の関数従属性があり、それに基づいて第 3 正規形まで正規化を行って、"商品"、"顧客"、"注文"、"注文明細" の各関係に分解した。関係 "注文明細" として、適切なものはどれか。ここで、{X, Y} は、属性 X と Y の組みを表し、X→Y は、X が Y を関数的に決定することを表す。また、実線の下線は主キーを表す。 注文記録(注文番号、注文日、顧客番号、顧客名、商品番号、商品名、数量、販売単価) 〔関数従属性〕 - ① 注文番号 → 注文日 - ② 注文番号 → 顧客番号 - ③ 顧客番号 → 顧客名 - ④ {注文番号、商品番号} → 数量 - ⑤ {注文番号、商品番号} → 販売単価 - ⑥ 商品番号 → 商品名

選択肢

  • .注文明細(注文番号、顧客番号、商品番号、顧客名、数量、販売単価)
  • .注文明細(注文番号、顧客番号、数量、販売単価)
  • .注文明細(注文番号、商品番号、数量、販売単価)
  • .注文明細(注文番号、数量、販売単価)

正解

. 注文明細(注文番号、商品番号、数量、販売単価)

解説

関数従属性から第 3 正規形分解: 注文(注文番号, 注文日, 顧客番号)、顧客(顧客番号, 顧客名)、商品(商品番号, 商品名)、注文明細({注文番号, 商品番号}, 数量, 販売単価)。

選択肢ごとの解説

  • .顧客番号や顧客名は注文明細ではなく顧客や注文に属する。
  • .商品番号がないと一意に識別できない。
  • .{注文番号, 商品番号} を主キーに、数量・販売単価=注文明細=正解。
  • .商品番号がないと識別不能。

基本情報技術者試験 令和3年度 科目A 修了認定試験過去問一覧へ戻る・問25