中小企業診断士 過去問
令和7年度(2025年)
問172 (経営情報システム 問12)
問題文
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
中小企業診断士試験 令和7年度(2025年) 問172(経営情報システム 問12) (訂正依頼・報告はこちら)
- ①:INNER JOIN ②:登録ユーザ.顧客ID,商品登録管理.商品コード
- ①:INNER JOIN ②:登録ユーザ.顧客ID,登録台数
- ①:RIGHT OUTER JOIN ②:登録ユーザ.顧客ID
- ①:LEFT OUTER JOIN ②:登録ユーザ.顧客ID,商品登録管理.商品コード
- ①:LEFT OUTER JOIN ②:登録ユーザ.顧客ID,登録台数
正解!素晴らしいです
残念...
この過去問の解説 (1件)
01
SQLは頻出なので、テキストでよく対策しておきましょう。
SQL文の「COUNT(商品登録管理.商品コード) AS 登録台数」を見ると、
顧客が購入した商品コードごとに登録した商品の件数を数えて「登録台数」の列として吐き出させようとしています。
一方、問題文に「ユーザ登録をしている顧客の中には、商品登録を行っていない者もいる。」とあり、
「購入商品登録状況」を見ると、登録台数0件の顧客がいます。
C0002とC0005ですね。
この場合、「登録ユーザ ① 商品登録管理」で①に「INNER JOIN」や「RIGHT OUTER JOIN」を入れてしまうと、購入商品の登録をしていない顧客の情報は無視されます。
しかし、すべての顧客の情報を出したいので、登録してないC0002とC0005も「0」として出力したい。
その場合、上記①には、「LEFT OUTER JOIN」が入ります。
次に「GROUP BY」ですが、これは、何を単位に数えるか、という指定で、ここでは、「顧客」が持つ「商品」台数を数えたい。
なので、必要な情報は「顧客ID」と「商品コード」です。
よって②には「登録ユーザ.顧客ID,商品登録管理.商品コード」が入ります。
なお、「登録台数」は、顧客が持つ商品台数を数えた後に出てくる数字で、現時点でのテーブルにはそのような数字は存在しないので、ここでの指定としては不適切です。
上記より、この選択肢が正解です。
SQL文は、問題文を読んでいれば確実に削除できる選択肢があるので、句の意味がわからなくても、まずは選択肢をしぼって正答確率を上げてください。
参考になった数0
この解説の修正を提案する
前の問題(問171)へ
令和7年度(2025年) 問題一覧
次の問題(問173)へ