HOME»データベーススペシャリスト掲示板»R3 午後Ⅰ 問3 設問3(2)
投稿する
サマリテーブルというのは、計算しやすいように(もう少し突っ込んで言えば、group byで集合関数をしやすいように)持っとくもので、会員番号から逆引きしてそこから集合関数かけてってやると、いらぬ結合負荷をかけるわけですよね。いちいちそういうのでいいのなら(結合による逆引き)、そもそも「サマリテーブルなんか作る必要がない」わけですよ。
会員番号は分析対象(…会員番号別売上額)ですか?
R3 午後Ⅰ 問3 設問3(2) [0759]
たちこまさん(No.1)
解説を見ると、表6の分析に必要な属性を抽出し、他の属性から一意に決まるものは除外するというアプローチでした。
この理屈で行くと、「年代」と「性別」を一意に定めることのできる「会員番号」の方が、列数が少なくなるため良いように思えるのですが、違うのでしょうか?
説明が分かりにくく申し訳ありませんが、回答いただけますと幸いです。
この理屈で行くと、「年代」と「性別」を一意に定めることのできる「会員番号」の方が、列数が少なくなるため良いように思えるのですが、違うのでしょうか?
説明が分かりにくく申し訳ありませんが、回答いただけますと幸いです。
2024.09.18 18:34
GinSanaさん(No.2)
★DB ゴールドマイスター
令和3年の午後1の問3に設問3は見当たりませんが、どの年度のかをもう一度記載していただけますか。
2024.09.18 18:58
たちこまさん(No.3)
申し訳ありません。令和2年でした。
2024.09.19 01:12
GinSanaさん(No.4)
★DB ゴールドマイスター
>この理屈で行くと、「年代」と「性別」を一意に定めることのできる「会員番号」の方が、列数が少なくなるため良いように思えるのですが、違うのでしょうか?
サマリテーブルというのは、計算しやすいように(もう少し突っ込んで言えば、group byで集合関数をしやすいように)持っとくもので、会員番号から逆引きしてそこから集合関数かけてってやると、いらぬ結合負荷をかけるわけですよね。いちいちそういうのでいいのなら(結合による逆引き)、そもそも「サマリテーブルなんか作る必要がない」わけですよ。
2024.09.19 07:58
たちこまさん(No.5)
回答ありがとうございます。
私の参考書では、「大分類は小分類から定められる」とあったのですが、この場合は結合負荷はかからないのでしょうか?
私の参考書では、「大分類は小分類から定められる」とあったのですが、この場合は結合負荷はかからないのでしょうか?
2024.09.20 13:17
みかんさん(No.6)
★DB ブロンズマイスター
> 表6の分析に必要な属性を抽出し、他の属性から一意に決まるものは除外するというアプローチでした。
会員番号は分析対象(…会員番号別売上額)ですか?
2024.09.20 21:55
GinSanaさん(No.7)
★DB ゴールドマイスター
この投稿は投稿者により削除されました。(2024.09.21 13:07)
2024.09.21 13:07
GinSanaさん(No.8)
★DB ゴールドマイスター
この投稿は投稿者により削除されました。(2024.09.21 13:12)
2024.09.21 13:12
GinSanaさん(No.9)
★DB ゴールドマイスター
そういう意味では、結合もある程度必要ですね。まったく結合がいらない、という風に持っていったことは、お詫びいたします。
では、仮に会員番号を付与したとしましょう。しかし、会員のテーブルは図2において、個人会員か法人会員(図2の会員区分がB)を区別するために主キーをいじっており、会員番号だけでは一意性は持てません。そうなれば、会員区分も必然的に外部キーとして指定されなければおかしいですね。その点で、列数が1個少ないによる優位点はなくなります。
仮にそれも指定したとしても、法人会員の場合、性別や年代はありはしませんからnullであり、取るだけ無駄だったとなりかねません。その分から、そこだけは逆引きとしなかったのではないでしょうか。
では、仮に会員番号を付与したとしましょう。しかし、会員のテーブルは図2において、個人会員か法人会員(図2の会員区分がB)を区別するために主キーをいじっており、会員番号だけでは一意性は持てません。そうなれば、会員区分も必然的に外部キーとして指定されなければおかしいですね。その点で、列数が1個少ないによる優位点はなくなります。
仮にそれも指定したとしても、法人会員の場合、性別や年代はありはしませんからnullであり、取るだけ無駄だったとなりかねません。その分から、そこだけは逆引きとしなかったのではないでしょうか。
2024.09.21 13:12
たちこまさん(No.10)
GinSanaさん
法人会員のことは考慮しておりませんでした。
自分の中で納得できました。ありがとうございます。
法人会員のことは考慮しておりませんでした。
自分の中で納得できました。ありがとうございます。
2024.09.21 14:18
たちこまさん(No.11)
見落としていたのですが、行数も可能な限り少なくすると指定されていました。
「年代」と「性別」ではなく、「会員番号」にした場合、
行数は増え、そこからGROUP BYで集約することになると考えられるため、
やはり「会員番号」は不適だったみたいです。
「年代」と「性別」ではなく、「会員番号」にした場合、
行数は増え、そこからGROUP BYで集約することになると考えられるため、
やはり「会員番号」は不適だったみたいです。
2024.09.21 14:23