令和3年度データベーススペシャリスト 午前Ⅱ問6

<テーマ:EXCEPT演算子による実行結果>  

正解はこちら

解答:エ

問題一覧へ

[基礎知識・用語のまとめ]

EXCEPT演算子・・・以下の例に示す構文で、SELECT文1とSELECT文2の差集合を得ることが可能です。差集合とはSELECT文1の結果の中からSELECT文2の結果に含まれない値の集合です。なお、EXCEPT演算子による演算結果は、重複が排除されユニークな集合となることに注意が必要です。重複を排除しない場合はALLをつける必要があります。

構文:SELECT文1 EXCEPT SELECT文2

[注意]SELECT文1とSELECT文2の結果は、列数とデータ型が一致している必要があります。

[解法]

問題の一つ目のSELECT文は、”商品”表の仕入先コードを抽出しており、その結果は問題の”商品”表の右側の列だけを抽出したものとなります。また、二つ目のSELECT文は”当月商品仕入合計”表の仕入先コードを抽出しており、結果は問題の”当月商品仕入合計”表の左側の列だけ抽出したものとなります。

EXCEPT演算子は、一つ目のSELECT文にだけ存在する値をユニークな状態で抽出します。そのため、”商品”表の仕入先コードの一覧から”当月商品仕入合計”表の仕入先コードの一覧に含まれるK01,K03,K05を除いたK02,K04だけが抽出されます。

したがって、正解の選択肢は「エ」となります。

[参考]

EXCEPT演算子の演算結果は、重複が排除されることを知らなければ、選択肢「ウ」と誤答してしまうため、注意が必要、、、らしい。

利用させていただきました素材へのリンク

うさちゃこちゃんねる様 https://www.youtube.com/channel/UCQcDdg4W6r5OfcB1JTcpABw  

ここまで読んでくれてありがとう!!
感謝!
感謝!

問題一覧へ

コメント