例 3 (SQL ステートメントへの追加)
ここで、これまでの演習での SQL ステートメント (「Advanced (拡張)」: 完了したステートメント (例 2) を参照) に条件を追加して、表 PARTS の中でパーツ・ナンバーが 12456 より大きい行だけを表示するものとします。
- 「Exit」機能キー (F3) を押して、SUBSELECT 文節の構文に戻ります。
Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: subselect clause Status: statement complete ─ select ─ from ─┬─────────┬─┬───────────┬─┬──────────┬─ └─ where ─┘ └─ groupby ─┘ └─ having ─┘ SELECT DISTINCT * FROM PARTS 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
- カーソルを「where」フラグメントに移動します。
- [Enter] を押します。where clause (WHERE 文節) の構文が表示されます。
Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: where clause Status: clause incomplete ─ WHERE ─ srchcon ─ SELECT DISTINCT * FROM PARTS WHERE 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
FM/Db2 は必須キーワードの WHERE を SQL ステートメントに追加したことに注意してください。
- カーソルを「srchcon」フラグメントに移動します。
- [Enter] を押します。search condition clause (SEARCH CONDITION 文節) の構文が表示されます。
Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: search condition clause Status: clause incomplete ◄───────────────────────────────────────────┐ ─┬───────┬─┬─ predicate ───┬───┬───────────────────────────────────────┬─┴─ └─ NOT ─┘ └─(─ srchcon ─)─┘ └─┬─ AND ─┬─┬───────┬─┬─ predicate ───┬─┘ └─ OR ──┘ └─ NOT ─┘ └─(─ srchcon ─)─┘ SELECT DISTINCT * FROM PARTS WHERE 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
- カーソルを最初の「predicate」フラグメントに移動します。
- [Enter] を押します。predicate clause (PREDICATE 文節) の構文が表示されます。
Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: predicate clause Status: clause incomplete ─┬─ basicpred ──────┬─ ├─ quantifiedpred ─┤ ├─ betweenpred ────┤ ├─ distinctpred ───┤ ├─ existspred ─────┤ ├─ inpred ─────────┤ ├─ likepred ───────┤ └─ nullpred ───────┘ SELECT DISTINCT * FROM PARTS WHERE 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
- カーソルを「basicpred」フラグメントに移動します。
- [Enter] を押します。basic predicate clause (BASIC PREDICATE 文節) の構文が表示されます。
Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: basic predicate clause Status: clause incomplete ─┬─ expression ─┬─ = ──┬─┬─ expression ─────┬─────────┬─ │ ├─ <> ─┤ └─(─ fullselect ─)─┘ │ │ ├─ < ──┤ │ │ ├─ > ──┤ │ │ ├─ <= ─┤ │ │ └─ >= ─┘ │ │ │ │ ◄─ , ──────────┐ ◄─ , ─────────┐ │ └─(─── expression ─┴─)─┬─ = ──┬─(─── expression ─┴─)─┘ └─ <> ─┘ SELECT DISTINCT * FROM PARTS WHERE 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
- カーソルを「expression」フラグメント (演算子リストの左方) に移動します。
- [Enter] を押します。expression clause (EXPRESSION 文節) の構文が表示されます。
Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: expression clause Status: clause incomplete ◄─ oper ─────────────────────────┐ ───┬─────┬─┬─ function ──────────┬┴─ ├─ + ─┤ ├─(─ expression )─────┤ └─ - ─┘ ├─ constant ──────────┤ ├─ column ────────────┤ ├─ hostvar ───────────┤ ├─ register ──────────┤ ├─(─ scalarfullsel ─)─┤ ├─ duration ──────────┤ ├─ caseexpr ──────────┤ ├─ castspec ──────────┤ └─ sequenceref ───────┘ SELECT DISTINCT * FROM PARTS WHERE 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
- カーソルを「column」フラグメントに移動します。
- [Enter] を押します。列名を入力できるポップアップ・パネルが表示されます。
- ポップアップ・パネルで「
PARTNO
」を入力します。Process Options Utilities Help ─ ┌───────────────────────── Freeform Entry ─────────────────────────┐ ─────── F │ │ │ Enter a column name to be inserted in the SQL: │ P │ PARTNO__________________________________________________________ │ lete │ ________________________________________________________________ │ │ ________________________________________________________________ │ ─ │ ________________________________________________________________ │ │ ________________________________________________________________ │ │ Command ===> ______________________________________ Scroll PAGE │ │ F1=Help F2=Split F3=Exit F7=Backward F8=Forward │ │ F9=Swap F12=Cancel │ └──────────────────────────────────────────────────────────────────┘ ├─(─ scalarfullsel ─)─┤ ├─ duration ──────────┤ ├─ caseexpr ──────────┤ ├─ castspec ──────────┤ └─ sequenceref ───────┘ SELECT DISTINCT * FROM PARTS WHERE PARTNO 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
- 「Exit (終了)」機能キー (F3) を押します。列名 PARTNO が SELECT ステートメントに追加されます。
- 「Exit (終了)」機能キー (F3) を押します。basic predicate clause (BASIC PREDICATE 文節) の構文が表示されます。
Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: basic predicate clause Status: clause incomplete ─┬─ expression ─┬─ = ──┬─┬─ expression ─────┬─────────┬─ │ ├─ <> ─┤ └─(─ fullselect ─)─┘ │ │ ├─ < ──┤ │ │ ├─ > ──┤ │ │ ├─ <= ─┤ │ │ └─ >= ─┘ │ │ │ │ ◄─ , ───────────┐ ◄─ , ──────────┐ │ └─(─── expression ──┴─)─┬─ = ──┬─(─── expression ─┴─)┘ └─ <> ─┘ SELECT DISTINCT * FROM PARTS WHERE PARTNO 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
- カーソルを
より大
(>) 記号に移動します。 - [Enter] を押します。
より大
(>) 記号が、部分的に作成済みの SELECT ステートメントに表示されます。 - カーソルを「expression」フラグメント (演算子リストの右方) に移動します。
- [Enter] を押します。expression clause (EXPRESSION 文節) の構文が表示されます。
Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: expression clause Status: clause incomplete ◄─ oper ──────────────────────────┐ ───┬─────┬─┬─ function ──────────┬─┴─ ├─ + ─┤ ├─(─ expression )─────┤ └─ - ─┘ ├─ constant ──────────┤ ├─ column ────────────┤ ├─ hostvar ───────────┤ ├─ register ──────────┤ ├─(─ scalarfullsel ─)─┤ ├─ duration ──────────┤ ├─ caseexpr ──────────┤ ├─ castspec ──────────┤ └─ sequenceref ───────┘ SELECT DISTINCT * FROM PARTS WHERE PARTNO > 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
- カーソルを「constant」フラグメントに移動します。
- [Enter] を押します。定数を入力できるポップアップ・パネルが表示されます。
- ポップアップ・パネルで「
12456
」を入力します。Process Options Utilities Help ─ ┌────────────────────── Freeform Entry ───────────────────────┐ ──────────── F │ │ │ Enter a constant to be inserted in the SQL: │ P │ 12456______________________________________________________ │ lete │ ___________________________________________________________ │ ─ │ ___________________________________________________________ │ │ ___________________________________________________________ │ │ ___________________________________________________________ │ │ Command ===> _________________________________ Scroll PAGE │ │ F1=Help F2=Split F3=Exit F7=Backward │ │ F8=Forward F9=Swap F12=Cancel │ └─────────────────────────────────────────────────────────────┘ SELECT DISTINCT * FROM PARTS WHERE PARTNO > 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
- 「Exit (終了)」機能キー (F3) を押します。
パネルには、完了した SELECT ステートメントが表示されています。図 1. 「Advanced (拡張)」: 完了したステートメント (例 3) Process Options Utilities Help ────────────────────────────────────────────────────────────────────────────── FM/Db2 (DFG2) Advanced SELECT Prototyping Prototyping: expression clause Status: clause incomplete ◄─ oper ───────────────────────────┐ ───┬─────┬─┬─ function ───────────┬─┴─ ├─ + ─┤ ├─(─ expression )──────┤ └─ - ─┘ ├─ constant ───────────┤ ├─ column ─────────────┤ ├─ hostvar ────────────┤ ├─ register ───────────┤ ├─(─ scalarfullsel ─)──┤ ├─ duration ───────────┤ ├─ caseexpr ───────────┤ ├─ castspec ───────────┤ └─ sequenceref ────────┘ SELECT DISTINCT * FROM PARTS WHERE PARTNO > 12456 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 DISTINCT * FROM PARTS WHERE PARTNO > 12456
関連するタスク