RR3 DM PM1 問3 空欄h,i,j,o

SDさん  
(No.1)
お世話になっております.
令和3年データベーススペシャリスト試験の表6h,i,j及び図3につきまして質問致します.
IPAの解答では
h:S1.設備名='エアコン'又はS1.設備コード='A1'
i:S2.設備名='オートロック'又はS2.設備コード='A2'
j:(S.設備名='エアコン' OR S.設備名='オートロック')又は(S.設備コード='A1' OR S.設備コード='A2')
o:BS1.設備コード='A1'
となっていましたが,
これらがそれぞれ
h:BS1.設備名='エアコン'又はBS1.設備コード='A1'
i:BS2.設備名='オートロック'又はBS2.設備コード='A2'
j:(BS.設備名='エアコン' OR BS.設備名='オートロック')又は(BS.設備コード='A1' OR BS.設備コード='A2')
o:B.設備コード='A1'
では駄目なのでしょうか?
2022.08.22 18:27
初心者さん 
(No.2)
まずは各テーブルにどんな列があるか確認してから考えるといいと思いますよ
2022.08.23 11:21
にゃんちゃんさん 
DB シルバーマイスター
(No.3)
BSテーブルに「設備名」列がないので
BS.設備名 は不可ですね。
BS.設備コード は内部結合なら同じ結果になると思います。

なので別解は
h:BS1.設備コード='A1'
i:BS2.設備コード='A2'
j:(BS.設備コード='A1' OR BS.設備コード='A2')

o:B.設備コード = 'A1'について
新物件テーブル(B)に「設備コード」列がないので不可です。
2022.08.23 14:44
SDさん  
(No.4)
初心者様,にゃんちゃん様,早速の御返信ありがとうございました.
また,丁寧な解説でよく理解出来ました.
結合の条件に使用するための列が片方に無かったという基本的なことを見落としていました…
別解の余地があったのはh,i,jの設備コードを用いて結合する場合のみでした.
御多忙のところ,本当にありがとうございました.
2022.08.24 05:23
SDさん  
(No.5)
この投稿は投稿者により削除されました。(2022.08.24 05:44)
2022.08.24 05:44
ひとさん 
(No.6)
話はそれると思いますが、ついでなので

私は本番で j: BS.設備コード IN ('A1', 'A2') と答え、公式回答を見て「(もしかして「IN」を使っちゃいけない理由があるのかな?)」と思いました。
2022.08.24 12:24
初心者さん 
(No.7)
INでもいいでしょう。

話がそれたついでに、
もし問題文が「空欄に入る1つの述語を答えよ」ならINでないとダメでしょうね。
2022.08.24 13:24

返信投稿用フォーム

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

その他のスレッド


Pagetop