過去問解説(経営情報システム)_2023年 第9問

難易度・正答率・重要度

  • 難易度:★★★☆☆(SQLの自己結合と条件式)
  • 正答率:★★☆☆☆(構造と目的の理解が必要)
  • 重要度:★★★☆☆(データ分析・併売分析の基礎)

問題文

以下に示す、ある小売店における販売データ「取引記録」から併売分析を行いたい。異なる2つの商品の組み合わせに対して、それらが同時に取引された件数を求める「集計結果」を得るためのSQL文を考える。

以下のSQL文の空欄①~③に入る記述の組み合わせとして、最も適切なものを下記の解答群から選べ。

SELECT
    A.商品ID as 商品1, B.商品ID as 商品2, COUNT(*) as 件数
FROM
    取引記録 as A, 取引記録 as B
WHERE
    ① and ②
GROUP BY
    A.商品ID, B.商品ID
ORDER BY
    件数 ③;

〔解答群〕

①:A.取引ID = B.取引ID ②:A.商品ID < B.商品ID ③:DESC
①:A.取引ID = B.取引ID ②:A.商品ID < B.商品ID ③:ASC
①:A.取引ID = B.取引ID ②:A.商品ID <> B.商品ID ③:ASC
①:A.取引ID < B.取引ID ②:A.商品ID = B.商品ID ③:DESC
①:A.取引ID < B.取引ID ②:A.商品ID <> B.商品ID ③:ASC

出典: 中小企業診断協会|2023年度 第1次試験問題|経営情報システム(PDF)

解答

  • 正解:ア(①:A.取引ID = B.取引ID ②:A.商品ID < B.商品ID ③:DESC)

解説(選択肢ごとの評価)

  • ①:A.取引ID = B.取引ID
     同一の取引内で併売された商品を抽出するために必要な条件。自己結合により同じ取引IDのレコードをペアにする。
  • ②:A.商品ID < B.商品ID
     商品ペアの重複(P001-P002とP002-P001)を防ぐために、大小比較で一方向に限定する。≠では重複が残る。
  • ③:DESC
     件数の多い順に並べることで、併売頻度の高い組み合わせを上位に表示できる。分析目的に合致。

他選択肢の誤り

  • イ: 並び順が昇順(ASC)であり、分析上は頻度の高い順が望ましい。
  • ウ: ≠では重複ペアが含まれるため、集計結果が二重になる。
  • エ: 取引IDの大小比較は意味がなく、商品IDが同じという条件も併売分析に不適。
  • オ: 取引IDの大小比較は不要。≠では重複ペアが含まれる。

学習のポイント

  • 自己結合: 同一テーブルを別名で2回参照し、ペア分析や比較に活用。
  • 併売分析: 商品ペアの出現頻度を集計し、マーケティングやレコメンドに活用。
  • 重複排除: 商品IDの大小比較でペアの一意性を確保。
  • ORDER BY DESC: 分析結果は頻度順に並べるのが基本。