例 1 (単純な SQL ステートメントの作成)

以下の一連のパネルには、表 PARTS のすべての行を表示するための SQL ステートメントを、「Advanced SELECT Prototyping (拡張 SELECT プロトタイピング)」を使用して作成する各ステージが示されます。

  1. 「SQL Prototyping and Execution (SQL プロトタイピングおよび実行)」パネルからオプション 2「Advanced (拡張)」を選択して、初期「Advanced SELECT Prototyping (拡張 SELECT プロトタイピング)」パネルを表示します。
  2. カーソルを「fullselect」フラグメントに移動します。
  3. Enter キーを押します。full select clause (FULL SELECT 文節) の構文が表示されます。
      Process   Options   Utilities   Help
     ──────────────────────────────────────────────────────────────────────────────
     FM/Db2 (DFG2)            Advanced SELECT Prototyping
    
     Prototyping: full select clause                   Status: clause incomplete
    
                           ◄──────────────────────────────────────────┐
     ─┬─ subselect ──────┬───┬──────────────────────────────────────┬─┴─
      └─(─ fullselect ─)─┘   └─┬─ UNION ─────┬─┬─ subselect ──────┬─┘
                               └─ UNION ALL ─┘ └─(─ fullselect ─)─┘
    
    
    
    
    
    
    
    
    
    
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Executed
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel
  4. カーソルを「subselect」フラグメントに移動します。
  5. Enter キーを押します。subselect clause (SUBSELECT 文節) の構文が表示されます。
      Process   Options   Utilities   Help
     ──────────────────────────────────────────────────────────────────────────────
     FM/Db2 (DFG2)            Advanced SELECT Prototyping
    
     Prototyping: subselect clause                     Status: clause incomplete
    
     ─ select ─ from ─┬─────────┬─┬───────────┬─┬──────────┬─
                      └─ where ─┘ └─ groupby ─┘ └─ having ─┘
    
    
    
    
    
    
    
    
    
    
    
    
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Executed
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel

    select」および「from」フラグメントは画面上に赤色で表示され、これらのフラグメントに関するサブセクションを完了しなければそのフラグメントは解決できないことが示される点に注意してください。

  6. カーソルを「select」フラグメントに移動します。
  7. Enter キーを押します。select clause (SELECT 文節) の構文が表示されます。
      Process   Options   Utilities   Help
     ──────────────────────────────────────────────────────────────────────────────
     FM/Db2 (DFG2)            Advanced SELECT Prototyping
    
     Prototyping: select clause                        Status: clause incomplete
    
               ┌─ ALL ──────┐
     ─ SELECT ─┼────────────┼─┬─ * ────────────────────────────────────────┬─
               └─ DISTINCT ─┘ │ ◄─ , ────────────────────────────────────┐ │
                              └───┬─ expression ─┬───────────────────┬─┬─┴─┘
                                  │              │ ┌─ AS ─┐          │ │
                                  │              └─┴──────┴─ column ─┘ │
                                  └─┬─ table ───────┬─ .* ─────────────┘
                                    ├─ view ────────┤
                                    └─ correlation ─┘
    
    
     SELECT ALL
    
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Executed
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel
    現在、パネルには部分的に作成済みの SELECT ステートメントが表示されています。
    SELECT ALL
    これは、以下の理由によります。
    • キーワード SELECT はこのフラグメントの必須キーワードです。このフラグメントを選択したため、FM/Db2 が SELECT ステートメントに入れています。
    • ALL はデフォルトのキーワードです (この場合には、このキーワードが必要キーワードです)。
  8. カーソルをアスタリスク (*) に移動します。
  9. Enter キーを押します。
      Process   Options   Utilities   Help
     ──────────────────────────────────────────────────────────────────────────────
     FM/Db2 (DFG2)            Advanced SELECT Prototyping
    
     Prototyping: select clause                        Status: clause complete
    
               ┌─ ALL ──────┐
     ─ SELECT ─┼────────────┼─┬─ * ────────────────────────────────────────┬─
               └─ DISTINCT ─┘ │ ◄─ , ────────────────────────────────────┐ │
                              └───┬─ expression ─┬───────────────────┬─┬─┴─┘
                                  │              │ ┌─ AS ─┐          │ │
                                  │              └─┴──────┴─ column ─┘ │
                                  └─┬─ table ───────┬─ .* ─────────────┘
                                    ├─ view ────────┤
                                    └─ correlation ─┘
    
    
     SELECT ALL *
    
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Executed
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel
    現在、パネルには部分的に作成済みの SELECT ステートメントが表示されています。
    SELECT ALL *
  10. 「Exit (終了)」機能キー (F3) を押します。subselect clause (SUBSELECT 文節) の構文が表示されます。
      Process   Options   Utilities   Help
     ──────────────────────────────────────────────────────────────────────────────
     FM/Db2 (DFG2)            Advanced SELECT Prototyping
    
     Prototyping: subselect clause                     Status: clause incomplete
    
     ─ select ─ from ─┬─────────┬─┬───────────┬─┬──────────┬─
                      └─ where ─┘ └─ groupby ─┘ └─ having ─┘
    
    
    
    
    
    
    
    
    
    
     SELECT ALL *
    
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Executed
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel

    ここで、画面上の「select」フラグメントは赤色から緑色に変化し、このフラグメントに関するサブセクションは完了し、このフラグメントは解決できることを示している点に注意してください。

    次に、「from」フラグメントに関するサブセクションを完了する必要があります。

  11. カーソルを「from」フラグメントに移動します。
  12. Enter キーを押します。from clause (FROM 文節) の構文が表示されます。
      Process   Options   Utilities   Help
     ──────────────────────────────────────────────────────────────────────────────
     FM/Db2 (DFG2)            Advanced SELECT Prototyping
    
     Prototyping: from clause                          Status: clause incomplete
    
             ◄─ , ──────┐
     ─ FROM ─── tabref ─┴─
    
    
    
    
    
    
    
    
    
     SELECT ALL * FROM
    
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Executed
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel
    現在、パネルには部分的に作成済みの SELECT ステートメントが表示されています。
    SELECT ALL * FROM
    これは、キーワード FROM が必須キーワードだからです。

    ここで再び、「tabref」フラグメントは画面上に赤色で表示され、このフラグメントに関するサブセクションはまだ完了しておらず、このフラグメントは解決できていないことを示している点に注意してください。

  13. カーソルを「tabref」フラグメントに移動します。
  14. Enter キーを押します。table specification clause (TABLE SPECIFICATION 文節) の構文が表示されます。
      Process   Options   Utilities   Help
     ______________________________________________________________________________
     FM/Db2 (DFG2)            Advanced SELECT Prototyping
    
     Prototyping: table reference clause               Status: clause incomplete
    
      ─┬─┬─ table ─────┬─┬──────────┬──────────┬─
       │ ├─ view ──────┤ └─ correl ─┘          │
       │ └─ tablocref ─┘                       │
       ├─┬─────────┬─(─ fullselect ─)─ correl ─┤
       │ └─ TABLE ─┘                           │
       ├─ tabfunref ───────────────────────────┤
       ├─ itableref ───────────────────────────┤
       └─ joinedtable ─────────────────────────┘
    
    
    
    
    
     SELECT ALL * FROM
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Execute
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel
  15. カーソルを「table」フラグメントに移動します。
  16. Enter キーを押します。表名を入力できるパネルが表示されます。
  17. パネルで「PARTS」を入力します。
      Process   Options   Utilities   Help
     ─ ┌───────────────────────── Freeform Entry ─────────────────────────┐ ───────
     F │                                                                  │
       │ Enter a table name to be inserted in the SQL:                    │
     P │ PARTS___________________________________________________________ │ lete
       │ ________________________________________________________________ │
     ─ │ ________________________________________________________________ │
       │ ________________________________________________________________ │
       │ ________________________________________________________________ │
       │ Command ===> ______________________________________ Scroll PAGE  │
       │  F1=Help      F2=Split     F3=Exit      F7=Backward  F8=Forward  │
       │  F9=Swap     F12=Cancel                                          │
       └──────────────────────────────────────────────────────────────────┘
      └─ joinedtable ─────────────────────────┘
    
    
    
    
    
     SELECT ALL * FROM
    
    
    
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Executed
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel
  18. 「Exit (終了)」機能キー (F3) を押します。table specification clause (TABLE SPECIFICATION 文節) の構文が表示されます。
    1. 「Advanced SELECT prototyping (拡張 SELECT プロトタイピング)」: 完了したステートメント (例 1)
      Process   Options   Utilities   Help
     ______________________________________________________________________________
     FM/Db2 (DFG2)            Advanced SELECT Prototyping
    
     Prototyping: table reference clause               Status: statement complete
    
      ─┬─┬─ table ─────┬─┬──────────┬──────────┬─
       │ ├─ view ──────┤ └─ correl ─┘          │
       │ └─ tablocref ─┘                       │
       ├─┬─────────┬─(─ fullselect ─)─ correl ─┤
       │ └─ TABLE ─┘                           │
       ├─ tabfunref ───────────────────────────┤
       ├─ itableref ───────────────────────────┤
       └─ joinedtable ─────────────────────────┘
    
    
    
    
    
     SELECT ALL * FROM PARTS
    
     Command ===> _____________________________________________________ Scroll PAGE
      F1=Help      F2=Split     F3=Exit      F4=Deselect  F5=InsRpt    F6=Execute
      F7=Backward  F8=Forward   F9=Swap     F10=PrvRpt   F11=NxtRpt   F12=Cancel
    パネルには、完了した SELECT ステートメントが表示されています。
    SELECT ALL * FROM PARTS
    ここで画面上の「table」フラグメントは赤色から緑色に変化し、このフラグメントに関するサブセクションは完了し、このフラグメントは解決できることを示している点に注意してください。また状況標識 (Status: (状況:)) が「statement complete (ステートメント完了)」を示していることにも注意してください。

関連するタスク

関連する参照先