HOME»応用情報技術者試験掲示板»平成26年春期 午後問6 設問3について
投稿する

平成26年春期 午後問6 設問3について [3190]

 マイムさん(No.1) 
平成26年春期 午後問6(旅客船Web予約システムの構築)の設問3について、
図3の4~5行目で内部結合が2回行われていますが、2回目の内部結合で使用される(座席クラス番号での結合に使用している)Bは、1回目の内部結合でAと結合されたものだと認識していますが、正しいでしょうか?

初歩的な質問かもしれませんが、どなたかご回答頂ければ幸いです。
よろしくお願い致します。
2022.03.05 13:21
さん(No.2) 
考え方、理解の仕方としてはそれで問題ないと思います。
ただ、クエリを実行するDB管理システムが1つ目の結合→2つ目の結合というように順番に結合するとは限らないようです。
実務では実行計画をみてチューニングしていくのが必要になると思います。

ちなみに、sqlserverでは結合の順序を指定するオプションも用意されているようです(sqlserver option句で調べると公式ページに詳細出ていると思います)。


わたしもそこまでDB詳しくないですがお役に立てれば幸いです、、、
2022.03.05 17:31
 マイムさん(No.3) 
わ様

ご回答ありがとうございます。
大変参考になりました。
ありがとうございました!
2022.03.05 18:46
GinSanaさん(No.4) 
AP プラチナマイスター
from句の1つ目に指定するテーブルのレコードの件数によって速度が変わるのはあるのでfromに列挙する場合は気にしますけど、ふつう列挙しませんからねえ(1つであとはJoinでずらずら書いて上からオプティマイザがくっつけていく)

基本は少ないレコードのテーブルを下地にするもんだというところからです。

Oracle オプティマイザによるアクセス順はパフォーマンスにどの程度影響があるか
products.sint.co.jp/siob/blog/performance-table-access
などを読んでください。

ヒント句使うよりオプティマイザの自力の方がマシなケースが増えましたからもう変な小細工するなといいたいところまでは来ましたね。

2022.03.05 22:36

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop