“東京在庫”表と“大阪在庫”表に対して、SQL文を実行して得られる結果はどれか。ここで、実線の下線は主キーを表す。
東京在庫 大阪在庫
┌─────┬───┐ ┌─────┬───┐
│商品コード│在庫数│ │商品コード│在庫数│
┝━━━━━┿━━━┥ ┝━━━━━┿━━━┥
│ A001 │ 50 │ │ B002 │ 15 │
├─────┼───┤ ├─────┼───┤
│ B002 │ 25 │ │ C003 │ 35 │
├─────┼───┤ ├─────┼───┤
│ C003 │ 35 │ │ D004 │ 80 │
└─────┴───┘ └─────┴───┘
〔SQL文〕
SELECT 商品コード, 在庫数, FROM 東京在庫
UNION ALL
SELECT 商品コード, 在庫数, FROM 大阪在庫
┌─────┬───┐ ┌─────┬───┐
ア│商品コード│在庫数│ イ│商品コード│在庫数│
┝━━━━━┿━━━┥ ┝━━━━━┿━━━┥
│ A001 │ 50 │ │ A001 │ 50 │
├─────┼───┤ ├─────┼───┤
│ B002 │ 25 │ │ B002 │ 40 │
├─────┼───┤ ├─────┼───┤
│ B002 │ 15 │ │ C003 │ 70 │
├─────┼───┤ ├─────┼───┤
│ D004 │ 80 │ │ D004 │ 80 │
└─────┴───┘ └─────┴───┘
┌─────┬───┐ ┌─────┬───┐
ウ│商品コード│在庫数│ エ│商品コード│在庫数│
┝━━━━━┿━━━┥ ┝━━━━━┿━━━┥
│ A001 │ 50 │ │ A001 │ 50 │
├─────┼───┤ ├─────┼───┤
│ B002 │ 25 │ │ B002 │ 25 │
├─────┼───┤ ├─────┼───┤
│ B002 │ 15 │ │ B002 │ 15 │
├─────┼───┤ ├─────┼───┤
│ C003 │ 35 │ │ C003 │ 35 │
├─────┼───┤ ├─────┼───┤
│ D004 │ 80 │ │ C003 │ 35 │
└─────┴───┘ ├─────┼───┤
│ D004 │ 80 │
└─────┴───┘
エ
UNION ALL句は、重複するレコードはそのまま抽出する。
単に UNION だけの指定であれば、ウの結果となる。
問28 | 目次 | 問30 |