H30 午後2問3 (2) lについて
Pggg5000さん
(No.1)
経理分析作成の探索対象件数について
IPAの解答例は1,432,600(1,332,400でも正解)
とありますが、よく理解できませんでした。
※また、かっこの正解でも良い理由もわかりません。
ご教授頂けるとありがたいです。
よろしくお願いします。
IPAの解答例は1,432,600(1,332,400でも正解)
とありますが、よく理解できませんでした。
※また、かっこの正解でも良い理由もわかりません。
ご教授頂けるとありがたいです。
よろしくお願いします。
2022.09.11 22:55
にゃんちゃんさん
★DB シルバーマイスター
(No.2)
経費分析表作成において必要なテーブルの情報は以下の通りです。
※P.18「・申請数は、各事業部、各科目、各処理年月に均一に分布するものとする。」
とあるので、全行数を月数で割れば、1ヶ月あたりの行数が分かります。
・経費予算テーブル
12000行
60ヶ月分
→1ヶ月当たり200行
・経費伝票テーブル
6600000行
60ヶ月
→1ヶ月あたり110000行
経費分析表作成では
①経費予算テーブルから、対象年月分を抽出
②経費伝票テーブルから、上記に対応する行を抽出
③GROUP BYで集約
という手順を踏んでいます。
もし索引が定義されていなければ各テーブルの全行を探索するしかなく
①で12000行+②で6600000行
合計6612000行が探索行数となります。
今回は
P.13「主キーの索引は必ず定義する」
P.18「~の各テーブルには、処理年月をキーをする索引があるものとする」
ということで年月に索引が定義されているため、年月分の行数まで探索行数を抑えられます。
仮に「当月1ヶ月分の行を対象に処理を行う」ということであれば
①で経費予算テーブル200行だけを探索
②で経費伝票テーブル110000行だけを探索
1ヶ月分だけなら合計110200行が探索行数となります。
ここからが日本語の問題で別解が生まれている部分なのですが
P.11「当月の12ヶ月前から当月までの行を対象に処理を行う」ということで
これはいったい何ヶ月分なのか?を考えます。
「12ヶ月前から今まで?つまり"12"ヶ月分よね?」
「当月の1ヶ月前から当月、だったら2ヶ月分。そうやってさかのぼっていけば"13"ヶ月分になるはず」
という2大流派が生まれました。
日本語を厳密に読み解けば後者な気もしますが
問いたい意図とは違うためなのか、どちらの考え方でも正解とされました。
ということで
110200行×12か月分=1322400
110200行×13か月分=1432600
の2つの解答が生まれています。
※P.18「・申請数は、各事業部、各科目、各処理年月に均一に分布するものとする。」
とあるので、全行数を月数で割れば、1ヶ月あたりの行数が分かります。
・経費予算テーブル
12000行
60ヶ月分
→1ヶ月当たり200行
・経費伝票テーブル
6600000行
60ヶ月
→1ヶ月あたり110000行
経費分析表作成では
①経費予算テーブルから、対象年月分を抽出
②経費伝票テーブルから、上記に対応する行を抽出
③GROUP BYで集約
という手順を踏んでいます。
もし索引が定義されていなければ各テーブルの全行を探索するしかなく
①で12000行+②で6600000行
合計6612000行が探索行数となります。
今回は
P.13「主キーの索引は必ず定義する」
P.18「~の各テーブルには、処理年月をキーをする索引があるものとする」
ということで年月に索引が定義されているため、年月分の行数まで探索行数を抑えられます。
仮に「当月1ヶ月分の行を対象に処理を行う」ということであれば
①で経費予算テーブル200行だけを探索
②で経費伝票テーブル110000行だけを探索
1ヶ月分だけなら合計110200行が探索行数となります。
ここからが日本語の問題で別解が生まれている部分なのですが
P.11「当月の12ヶ月前から当月までの行を対象に処理を行う」ということで
これはいったい何ヶ月分なのか?を考えます。
「12ヶ月前から今まで?つまり"12"ヶ月分よね?」
「当月の1ヶ月前から当月、だったら2ヶ月分。そうやってさかのぼっていけば"13"ヶ月分になるはず」
という2大流派が生まれました。
日本語を厳密に読み解けば後者な気もしますが
問いたい意図とは違うためなのか、どちらの考え方でも正解とされました。
ということで
110200行×12か月分=1322400
110200行×13か月分=1432600
の2つの解答が生まれています。
2022.09.12 00:30
Pggg5000さん
(No.3)
なるほど、理解出来ました!
丁寧に説明頂きありがとうござました!
丁寧に説明頂きありがとうござました!
2022.09.12 09:04
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。