HOME»データベーススペシャリスト掲示板»H27 午後1 問3 設問1 (1)エ 副次索引

データベーススペシャリスト掲示板


[0378] H27 午後1 問3 設問1 (1)エ 副次索引

 いがらしさん(No.1) 
副次索引を用いた場合、テーブルには主索引順にデータが登録されているためランダムアクセスになると思ったのですが、回答では順次読み込むと書いてあります。

主索引を使う  =  順次アクセス
副次索引を使う  =  ランダムアクセス

ではないのでしょうか?

売上明細テーブルは売上明細連番順(主索引)に登録されているため、登録年月日で探そうとしても順次にならないのではないかと考えました。
2022.09.17 18:10
にゃんちゃんさん(No.2) 
DB・ブロンズエキスパート
売上明細ファイルの状態は以下の通りです。

登録年月, 加盟店コード, 利用年月日, ...
202208, A1001, 2022-07-29, ...
202208, A1001, 2022-07-30, ...
202208, A1001, 2022-07-31, ...
202208, B1002, 2022-07-20, ...
202208, B1002, 2022-07-22, ...

上記の状態で売上明細テーブルにINSERTします。
よって登録年月列は高クラスタな状態になっています。

よって副次索引{登録年月}では順次読み込みができることになります(エ)。

一方、結合先の利用残高テーブルについてはカード番号順に並んでいますが
売上明細テーブルから取り出す1行はカード番号順に取り出していません。
カード番号0001
カード番号0015
カード番号0006
カード番号0031
カード番号0003
・・・
とカード番号については順番に処理していないため
利用残高テーブルからページをランダムアクセスで読み込むことになります(オ)。
2022.09.17 23:35
 いがらしさん(No.3) 
にゃんちゃん様

確かに月次で登録するから登録年月順になっていますね…
「索引での検索」が出てきたら、テーブルの並び順をしっかり確認するようにします。

ご回答いただきありがとうございます。
2022.09.18 17:27

【返信投稿用フォーム】

お名前(10文字以内)

顔アイコン


本文(2,000文字以内)

投稿削除用のパスワード(20文字以内)

プレビュー
※宣伝や迷惑行為を防止するため、当サイトとIPAサイト以外のURLを含む文章の投稿は禁止されています。

投稿記事削除用フォーム

投稿No. パスワード 
© 2016-2022 データベーススペシャリストドットコム All Rights Reserved.

Pagetop