5月12日(火)4コマ目

今日、やったこと

[確認テスト 解説]確認テスト1

今日のホワイトボード

[確認テスト 解説]確認テスト1

前回やった確認テストの解説。

問1

「贔屓店舗名」列はない。「店舗名」列に命名した別名。

顧客IDの昇順で並び替えを忘れている人がちょこちょこ。

図 問1 正解例


問2

顧客マスタを自己結合する問題。

図 問2 正解例

以下でも表示は同じですが、以前からちょこちょこ言っていたテーブルの別名と使われ方が一致しません。テーブルの別名と使われ方が一致しないのは×です。

図 問2 テーブルの別名と使われ方が一致しない

問3

贔屓顧客がいない店は、店舗マスタが全行出力されるように顧客マスタと外部結合すると、顧客マスタの列がnullになっている。
図 問3 ① 贔屓顧客がいない店は

この結合結果に顧客マスタの列がnullな行を検索すればいい。
図 問3 正解例

nullか否かは is null

問4

ちょっと難しいが、問2の応用。
問2は被紹介者(紹介される側)と紹介者(紹介する側)の組み合わせ。
問4では逆に紹介者(紹介する側)と被紹介者(紹介される側)の組み合わせ。
まずは問2のselect句の紹介者と被紹介者を入れ替えると以下のように、この人が紹介したお客さんのようになる。
図 問2のselect句を入れ替え


紹介者がいない人は不要なので、外部結合ではなく、等価結合に変更。
図 外部結合 -> 等価結合 で紹介者がいない顧客を出力しない

紹介者でグループ化、各グループの行数がその人が紹介したお客さんの人数。
図 紹介者でグループ化、行数をカウント

次回は

caseのつづき。


 

このブログの人気の投稿

4月28日(火)3コマ目

4月24日(金)3コマ目

4月17日(金)3コマ目