情報処理安全確保支援士令和4年秋期 午前Ⅱ 問21

問21

表Rと表Sに対して,次のSQL文を実行した結果はどれか。
21.png/image-size:305×152
〔SQL文〕
SELECT R.X AS A, R.Y AS B, S.X AS C, S.Z AS D
  FROM R LEFT OUTER JOIN S ON R.X = S.X
  • 21a.png/image-size:231×62
  • 21i.png/image-size:231×86
  • 21u.png/image-size:231×111
  • 21e.png/image-size:231×135

分類

テクノロジ系 » データベース » データ操作

正解

解説

設問のSQL文は、
FROM R LEFT OUTER JOIN S ON R.X = S.X
R表とS表を属性Xで左外部結合した結果から、
SELECT R.X AS A, R.Y AS B, S.X AS C, S.Z AS D
4つの列を抽出するものです。

左外部結合(LEFT OUTER JOIN)とは、基準となる左表の行を全て抽出し、右表からは左表の行と自然結合できる行のみを抽出する結合です。左表の行と結合する行が右表に無い場合は右表の列の値をNULLとして結合します。したがって、R表とS表を左外部結合すると、両方に共通しているA002とA003の行は結合され、S表に存在しないA001とA005の行は値がNULLである行として結合されることとなります。
21_1.png/image-size:262×152
この結果表から、R表の属性XをA、R表の属性YをB、S表の属性XをC、S表の属性ZをDと命名して列を抽出するので「ウ」の結果となります。
21u.png/image-size:231×111
© 2014-2024 情報処理安全確保支援士ドットコム All Rights Reserved.

Pagetop