投稿する

R3午前2問6のEXCEPT句 [0720]

 イオさん(No.1) 
商品表と当月商品合計表からEXCEPT句を使用してSQL文を実行した結果を選択する問題について解答が「エ」ということですが、私は「ウ」と誤答しました。

問題集などの解説を見ると、
EXCEPT        ・・・重複は排除する
EXCEPT  ALL・・・重複をそのまま出力する

ということでしたので試しに
PostgreSQLでクエリを作成して実行してみました。

結果
EXCEPT句を使用したとき・・・K02  K04(2行出力)
EXCEPT  ALL句を使用したとき・・・K01  K02  K02  K04(4行出力)  
となぜか「K01」も出力されてしまいました。
商品表、当月商品仕入れ合計表、SQL文は問題の通りに入力し、「EXCEPT」の部分を「EXCEPT  ALL」にしただけです。なぜ上記の結果になってしまったのか?
2024.08.31 15:08
めんちゃんさん(No.2) 
これは単純に1つ目のテーブルにK01が2つあるからで
ALLを付けると個数も考慮されるという事だと思います。

1つ目  2つ目
K01  K01
K01        ・・・これが出ている
K02  
K02  
K03  K03
K04  
        K05
2024.09.01 09:59
 イオさん(No.3) 
めんちゃんさん

なるほど。
K01の数の差が出力されているのですね。

分かり易い説明ありがとうございました。
2024.09.01 10:31
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2016-2024 データベーススペシャリストドットコム All Rights Reserved.

Pagetop