H31 午後I 問3 設問3 (2)

たけしさん  
(No.1)
H31午後1問3設問3(2)についての質問です。
「索引探索に決められるためには、WHERE句のANDだけで結ばれた一つ以上の等値比較の述語の対象列が」という言葉の意味がわかりません。

この言葉はなにを意味しているのでしょうか?ANDで結ばれる?というところが特にわかりません。

また、解答によると、これに対応するSQL2の対象列は「品番」「子品番」「親品番」になるとのことですが「LLC」もWHERE句のAND後に登場しており、これも含まれるのではないかと混乱しております。

さらに、解答によると、子品番から親品番を検索する処理では索引が作成されない、とのことですが、「子品番から親品番を検索する処理の際に使われる索引を作成する」という目的は、この問題文のどこから現れてくるものなのでしょうか?

よろしくお願いいたします。
2022.10.08 18:49
わんわんさん 
(No.2)
私も何度読んでも理解できませんでした。。
今も完全に理解できていないので不安です(笑)

1つ目の質問について、問題文には
"構成"テーブルにユニーク索引を追加する場合、その索引を構成する全ての列名を定義順に答えよ
と記載されています。
「LLC」は"構成"テーブルではなく"品目"テーブルの属性だから含まれないのだと思います。

2つ目の質問についてはよくわかりませんので、ほかの方に返信をお願いしたいです。
2022.10.08 20:28
よぷてぬさん 
(No.3)
>「索引探索に決められるためには、WHERE句のANDだけで結ばれた一つ以上の等値比較の述語の対象列が」という言葉の意味がわかりません。
>この言葉はなにを意味しているのでしょうか?ANDで結ばれる?というところが特にわかりません。
→単純に言うとWHERE句に指定されている列を指します。ANDを用いることで複数の列を指定できることを指しています。

>また、解答によると、これに対応するSQL2の対象列は「品番」「子品番」「親品番」になるとのことですが
>「LLC」もWHERE句のAND後に登場しており、これも含まれるのではないかと混乱しております。
>さらに、解答によると、子品番から親品番を検索する処理では索引が作成されない、とのことですが、
>「子品番から親品番を検索する処理の際に使われる索引を作成する」という目的は、
>この問題文のどこから現れてくるものなのでしょうか?
→3.主なテーブルのテーブル構造に「なお、各テーブルには主索引が定義されている。
索引キーが複合列の場合、テーブル構造に示した列の順番で定義される。」となっているので
構成テーブルは主キーである親品番、子品番の順に索引が定義されていることになります。

但し、SQL2のWHERE句は子品番から始まっていますが、子品番が先頭の索引がないため
「子品番、親品番」の索引を作成する必要があります。
なお、問われているのは構成テーブルに追加する索引のため、品目テーブルのLLCは無視します。
2022.10.08 21:36

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。

その他のスレッド


Pagetop