sql01     sql02     sql03     sql04     sql05     sql06    

●問題@

商品マスタと商品分類を旧形式の内部結合(SQL92) で記述した
サンプルを以下に示します

select 
   商品マスタ.商品コード,
   商品マスタ.商品名 
 from 商品マスタ,商品分類マスタ
 where 
   商品マスタ.商品分類 = 商品分類マスタ.商品分類
   and 商品マスタ.商品分類 = 'A01'

商品コード商品名
0022野菜−−−−−−−−−−−−−−−−−−−0022
0085野菜−−−−−−−−−−−−−−−−−−−0085
これと同じ内容を INNER JOIN で記述して下さい(SQL99) ------------------------------------------------------------ ●問題A UNION を使用すると二つの query の結果を結合 する事ができます select 商品コード, 商品名, 商品分類 from 商品マスタ where 商品分類 = 'A01' union select 商品コード, 商品名, 商品分類 from 商品マスタ where 商品分類 = 'A02'
商品コード商品名商品分類
0017インスタントラーメン−−−−−−−−−−−0017A02
0022野菜−−−−−−−−−−−−−−−−−−−0022A01
0074インスタントラーメン−−−−−−−−−−−0074A02
0085野菜−−−−−−−−−−−−−−−−−−−0085A01
0086インスタントラーメン−−−−−−−−−−−0086A02
これを利用して以下のような結果(架空の行)を作成して下さい
商品コード商品名商品分類
0022野菜−−−−−−−−−−−−−−−−−−−0022A01
0085野菜−−−−−−−−−−−−−−−−−−−0085A01
9001仮商品AAA
------------------------------------------------------------ ●問題B 問題Aで作成した query をインラインビューとして 使用して商品分類マスタと内部結合(INNER JOIN)して下さい
商品コード商品名商品分類名称
0022野菜−−−−−−−−−−−−−−−−−−−0022A01野菜
0085野菜−−−−−−−−−−−−−−−−−−−0085A01野菜
------------------------------------------------------------ ●問題C 問題Bで作成した query を LEFT OUTER JOIN に変更して 以下のような結果を出力して下さい
商品コード商品名商品分類名称
0022野菜−−−−−−−−−−−−−−−−−−−0022A01野菜
0085野菜−−−−−−−−−−−−−−−−−−−0085A01野菜
9001仮商品AAA
------------------------------------------------------------ ●問題D select 〜 into を使用して以下のデータを持つ 商品B というテーブルを作成して下さい
商品コード商品名商品分類商品区分
0022野菜−−−−−−−−−−−−−−−−−−−0022A010
0085野菜−−−−−−−−−−−−−−−−−−−0085A010
9001仮商品AAA
------------------------------------------------------------ ●問題E 商品B にコード名称マスタを外部結合すると 以下のようになります select 商品B.*, コード名称マスタ.名称 from 商品B left outer join コード名称マスタ on 商品B.商品区分 = コード名称マスタ.コード where コード名称マスタ.区分 = 3 or コード名称マスタ.区分 is null
商品コード商品名商品分類商品区分名称
0022野菜−−−−−−−−−−−−−−−−−−−0022A010通常
0085野菜−−−−−−−−−−−−−−−−−−−0085A010通常
9001仮商品AAA
これにさらに 商品分類を外部結合して下さい
商品コード商品名商品分類商品区分区分名分類名
0022野菜−−−−−−−−−−−−−−−−−−−0022A010通常野菜
0085野菜−−−−−−−−−−−−−−−−−−−0085A010通常野菜
9001仮商品AAA