《RDBの演算》
Create:2002/02/11
[BACK] [NEXT] [メニュー]
   選択、射影、結合がある。

【選択】
    表a        表b     
    山名称 地域    山名称 地域 
    ─── ───   ─── ───
    富士山 本州    富士山 本州 
    樽前山 北海道   槍ヶ岳 本州 
    槍ヶ岳 本州    八ヶ岳 本州 
    八ヶ岳 本州    那須岳 本州 
    石槌山 四国
    阿蘇山 九州
    那須岳 本州
    久住山 九州
    大雪山 北海道

    「選択」は一言で言うと「条件に合致した行を抜き取る処理」ということになる。
    上記の例で言えば表aから「地域=本州」という検索条件で抜き出したものが表bという
    ことになる。
    いわば「横に見た処理」であるといえる。

    表a         表b(条件に合致する行)     
    山名称 地域     山名称 地域 
    ─── ───    ─── ───
    富士山 本州  →  富士山 本州 
    樽前山 北海道 →× 
    槍ヶ岳 本州  →  槍ヶ岳 本州
    八ヶ岳 本州  →  八ヶ岳 本州 
    石槌山 四国  →×
    阿蘇山 九州  →×
    那須岳 本州  →  那須岳 本州
    久住山 九州  →×
    大雪山 北海道 →×


 【射影】
    表a        表c
    山名称 地域    地域
    ─── ───   ───
    富士山 本州    本州
    樽前山 北海道   北海道
    槍ヶ岳 本州    四国
    八ヶ岳 本州    九州
    石槌山 四国
    阿蘇山 九州
    那須岳 本州
    久住山 九州
    大雪山 北海道

    「射影」は一言で言うと「表から特定の項目(RDBでは列と呼ぶ。)を取り出す処理」と
    いうことになる。
    上記の例で言えば表aから「地域」という項目を抜き出したものが表cということになる。
    いわば「縦に見た処理」であるといえる。

    表a      
    山名称 地域  
    ─── ─── 
    富士山 本州  
    樽前山 北海道 
    槍ヶ岳 本州  
    八ヶ岳 本州  
    石槌山 四国
    阿蘇山 九州
    那須岳 本州
    久住山 九州
    大雪山 北海道

         ↓ 

        表c
        地域
        ───
        本州
        北海道
        四国
        九州


【結合】
    社員表                   役職表

   社員コード 氏名   役職         役職 資格給与
   ───── ──── ──         ── ────
   1     鈴木一郎 社長         社長 120万
   2     太田次郎 部長         部長  80万
   3     田中幸夫 課長         課長  50万
   4     加藤弘子 課長         係長  40万 

    ごく単純に言うと「複数の表を結合する処理」と覚えておけばよい。
    ただし、結合にあたってはそれぞれの表のある項目を結合のためのキーとする。
    上記の場合は社員表の「役職」と役職表の「役職」が結合のためのキーになっている。
    項目名が同じである必要性は無い。
    結合した結果は表Aになる。
    例えば、社員コードが4である加藤弘子は役職が課長であるので役職表の課長の資格給与
    である50万が資格給与ということになる。

    表A

    社員コード 氏名   役職 資格給与
    ───── ──── ── ────
    1     鈴木一郎 社長 120万
    2     太田次郎 部長  80万
    3     田中幸夫 課長  50万
    4     加藤弘子 課長  50万

    3つの基本操作ともに結果が表になっていることに注意が必要である。

[BACK] [NEXT] [メニュー]