データベーススペシャリスト掲示板

掲示板検索:

[0165]R02(H32) PM1 問2

 りんさん(No.1) 
図4のSQLは

SELECT 公演名, ・・・, 料金, (CASE WHEN A2.空席数 IS NULL THEN '×' ELSE '○' END) AS 空席情報
FROM 会場, (・・・) AS A1 LEFT OUTER JOIN (SELECT * FROM 席種在庫 WHERE 空席数 > 0 ) AS A2
・・・

となっていますが、これは

SELECT 公演名, ・・・, 料金, (CASE WHEN A2.空席数 <=0 THEN '×' ELSE '○' END) AS 空席情報
FROM 会場, (・・・) AS A1 INNER JOIN 席種在庫 AS A2
・・・

と同じですか?

もし同じなら、なぜ試験問題では回りくどい前者を用いているのですか?
2021.03.18 13:34
DCLさん(No.2) 
この問題のSQLは平成20年度の問3をかなり流用しています。その都合上から多少なり辻褄が合わないことが発生していると思われます。
2021.03.18 16:09
 りんさん(No.3) 
ご回答ありがとうございます。
H20問3の問題も確認してみます。
2021.03.18 17:12
9640さん(No.4) 
A2テーブルは空席座席がある行しか抽出していません。
これをA1とINNER JOINすると、図3の空席情報が×の行が表示されない結果になります。

つまりLEFT OUTER JOINとINNER JOINでは全然違います。
2021.04.04 01:58

【返信投稿用フォーム】

お名前(10文字以内)

顔アイコン


本文(2,000文字以内)

投稿削除用のパスワード(20文字以内)

プレビュー
※宣伝や迷惑行為を防止するため、当サイトとIPAサイト以外のURLを含む文章の投稿は禁止されています。

投稿記事削除用フォーム

投稿No. パスワード 
© 2016-2021 データベーススペシャリストドットコム All Rights Reserved.

Pagetop