ヘッダーをスキップ
Oracle Database Application Expressユーザーズ・ガイド
リリース2.2
B31492-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

17 クエリー・ビルダーを使用した問合せの構築

クエリー・ビルダーのGraphical User Interfaceを使用すると、データベース開発者は、手動でSQLをコーディングしなくても、SQL問合せを作成できます。 クエリー・ビルダーを使用すると、SQLの知識がほとんどなくても、データベース・オブジェクトの検索およびフィルタ適用、オブジェクトおよび列の選択、オブジェクト間の関係の作成、問合せ結果の書式の表示、問合せの保存を行うことができます。

内容は次のとおりです。

クエリー・ビルダーの概要

「クエリー・ビルダー」ページは、次の3つのセクションに分かれています。

qry_bldr.gifの説明が続きます。
qry_bldr.gifの説明

このセクションの内容は次のとおりです。

クエリー・ビルダーへのアクセス

クエリー・ビルダーにアクセスするには、次のステップを実行します。

  1. 「作業領域」ホームページにログインします。

  2. SQLワークショップ」をクリックします。

  3. クエリー・ビルダーを表示するには、次のいずれかの操作を実行します。

    • SQLワークショップ」、「クエリー・ビルダー」の順にクリックする。

    • 「SQLワークショップ」アイコンの右側にある下矢印をクリックしてドロップダウン・メニューを表示する。 次に、「クエリー・ビルダー」メニュー・オプションを選択する。

qry_bldr_menu_apex.gifの説明が続きます。
qry_bldr_menu_apex.gifの説明


注意:

一貫性を保つため、このドキュメントでは、ナビゲーションを説明する際にプライマリ・ナビゲーション・パス(ドリルダウン方式)を使用します。

問合せ作成プロセスの理解

クエリー・ビルダーで問合せを作成するには、次のステップを実行します。

  1. オブジェクト選択ペインで、オブジェクトを選択します。 「オブジェクト選択ペインの使用」を参照してください。

  2. 「設計」ペインにオブジェクトを追加して、列を選択します。 「オブジェクトの選択」を参照してください。

  3. オプション: オブジェクト間の関係を確立します。 「オブジェクト間の関係の作成」を参照してください。

  4. オプション: 問合せ条件を作成します。 「問合せ条件の指定」を参照してください。

  5. 問合せを実行し、結果を表示します。 「問合せ結果の表示」を参照してください。

オブジェクト選択ペインの使用

オブジェクト選択ペインは「クエリー・ビルダー」ページの左側に表示され、カレント・スキーマ内の表、ビューおよびマテリアライズド・ビューをリストします。

このセクションの内容は次のとおりです。

オブジェクトの検索とフィルタの適用

オブジェクト選択ペインを使用して、カレント・スキーマ内の表、ビューおよびマテリアライズド・ビューを検索して表示します。

オブジェクトの検索またはフィルタの適用を行うには、次のステップを実行します。

  1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

    クエリー・ビルダーが表示されます。

  2. ペイン上部の検索フィールドに、大/小文字が区別されない問合せを入力します。

  3. 現在選択されているスキーマ内のすべての表またはビューを表示するには、検索フィールドを空白のままにします。

qry_bldr_search.gifの説明が続きます。
qry_bldr_search.gifの説明

オブジェクト選択ペインの非表示

表またはビューの非表示コントロールを選択して、オブジェクト選択ペインを非表示にできます。 オブジェクト選択ペインを非表示にすることで、「設計」ペインと「結果」ペインのサイズを大きくできます。

表またはビューの非表示コントロールはオブジェクト選択ペインの右側に表示されます。 「オブジェクト」リストが表示されている場合は、このコントロールを選択するとリストが非表示になります。 同様に、「オブジェクト」リストが非表示の場合は、このコントロールを選択すると、再度リストが表示されます。

オブジェクトの選択

「設計」ペインはオブジェクト選択ペインの右側に表示されます。 オブジェクト選択ペインからオブジェクトを選択すると、そのオブジェクトが「設計」ペインに表示されます。 オブジェクト選択ペインを使用してオブジェクト(表、ビューおよびマテリアライズド・ビュー)を選択し、「設計」ペインを使用して、問合せにおける選択したオブジェクトの使用方法を指定します。

このセクションの内容は次のとおりです。

サポートされる列の型

Oracle Database 10g リリース2(10.2)で使用可能なすべての列の型が「設計」ペインにオブジェクトとして表示されます。 次の列制限に注意してください。

「設計」ペインへのオブジェクトの追加

オブジェクト選択ペインからオブジェクトを選択して、オブジェクトを「設計」ペインに追加します。

「設計」ペインにオブジェクトを追加するには、次のステップを実行します。

  1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

    クエリー・ビルダーが表示されます。

  2. オブジェクト選択ペインで、オブジェクトを選択します。

    選択したオブジェクトが「設計」ペインに表示されます。 列名の右側にデータ型がグラフィカルに表示されることに注意してください。

    qry_bldr_add.gifの説明が続きます。
    qry_bldr_add.gifの説明

  3. 列名の左のチェック・ボックスを選択することによって、問合せに含める列を選択します。

    列を選択すると、その列が問合せに使用されることになります。 また、その列が「条件」タブに表示されます。 「条件」タブの「表示」チェック・ボックスによって、列が問合せ結果に含まれるかどうかを制御します。 このチェック・ボックスは、デフォルトでは選択されています。

    最初の20列を選択するには、オブジェクトの左上にある「表の処理」アイコンをクリックします。 「アクション」ウィンドウが表示されます。 「すべてをチェック」を選択します。

  4. 問合せを実行し、結果を表示するには、「実行」をクリックします。


    ヒント:

    問合せは、[CTRL] + [ENTER]を押して実行することもできます。

    「結果」ペインに問合せ結果が表示されます。

「設計」および「結果」ペインのサイズ変更

オブジェクトを選択すると、ページ中央の灰色の水平罫線を選択して、「設計」および「結果」ペインのサイズを変更できます。 罫線を上に移動すると、「設計」ペインが縮小します。 罫線を下に移動すると、「設計」ペインが拡大します。

「設計」ペインでのオブジェクトの削除または非表示

「設計」ペインでオブジェクトを削除または非表示にするには、オブジェクトの上部にあるコントロールを選択します。 オブジェクトを削除するには、右上の「削除」アイコンを選択します。 オブジェクト内の列を一時的に非表示にするには、「列の表示/非表示」アイコンをクリックします。

qry_bldr_remove_ico.gifの説明が続きます。
qry_bldr_remove_ico.gifの説明

問合せ条件の指定

条件を使用すると、操作するデータにフィルタを適用し、識別することができます。 オブジェクト内の列を選択するときに、「条件」タブで条件を指定できます。 これらの属性を使用して、列の別名の変更や、列条件の適用、列のソート、ファンクションの適用を行うことができます。

問合せ条件を指定するには、次のステップを実行します。

  1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

    クエリー・ビルダーが表示されます。

  2. オブジェクト選択ペインで、オブジェクトを選択します。

    選択したオブジェクトが「設計」ペインに表示されます。

  3. 列名の左のボックスをクリックして、問合せに含める列を選択します。

    列を選択すると、問合せにその列を含めることになります。 各列を選択すると、「条件」ビューに別個の行として表示されます。 表17-1に、「条件」タブで使用可能な属性を示します。

    表17-1 「条件」タブ

    条件属性 説明

    上矢印および下矢印

    問合せ結果に表示される列の表示順序を制御します。 列を上または下に移動するには、矢印ボタンをクリックします。

    参照: 「問合せ結果の表示」

    列名を表示します。

    別名

    列の別名(オプション)を指定します。 別名は列の代替名です。 別名は、列名をより説明的にする場合や、列名を短縮する場合、あいまいな参照を回避する場合に使用されます。

    条件

    列の条件を指定します。

    入力した条件により、問合せのWHERE句が変更されます。 列条件を指定するときは、適切な演算子およびオペランドを含める必要があります。 次に例を示します。

    >=10
    ='VA'
    IN (SELECT dept_no FROM dept)
    BETWEEN SYSDATE AND SYSDATE + 15
    
    

    ソート・タイプ

    ソート・タイプを選択します。 オプションは次のとおりです。

    • 昇順(Asc

    • 降順(Desc

    ソート順序

    番号(1、2、3・・・)を入力して、選択した列が表示される順序を指定します。

    表示

    列を問合せ結果に含めるには、このチェック・ボックスを選択します。 フィルタ適用のためにのみ、列を問合せに追加する必要がある場合は、「表示」を選択する必要はありません。

    たとえば、次の問合せを作成するとします。

    SELECT ename FROM emp WHERE deptno = 10

    この問合せをクエリー・ビルダーで作成するには、次のステップを実行します。

    1. 「オブジェクト」リストから、EMPを選択します。

    2. 「設計」ペインで、enameおよびdeptnoを選択します。

    3. deptno列に対して、「条件」で=10 と入力し、「表示」チェック・ボックスを選択解除します。

    ファンクション

    引数ファンクションを選択します。 使用可能なファンクションは次のとおりです。

    • NUMBER列: COUNTCOUNT DISTINCTAVGMAXIMUMMINIMUMSUM

    • VARCHAR2、CHAR列: COUNTCOUNT DISTINCTINITCAPLENGTHLOWERLTRIMRTRIMTRIMUPPER

    • DATE、TIMESTAMP列: COUNTCOUNT DISTINCT

    グループ化

    集計関数の使用時にグループ化に使用する列を指定します。 出力に含まれる列にのみ適用できます。

    削除

    問合せから列を排除して、選択解除します。


    列を選択し条件を定義すると、クエリー・ビルダーによってSQLが書き込まれます。

  4. 基礎となるSQLを表示するには、「SQL」タブをクリックします。

オブジェクト間の関係の作成

結合を作成することで、オブジェクト間の関係を作成できます。 結合によって、複数の表、ビューまたはマテリアライズド・ビューの関係が識別されます。

このセクションの内容は次のとおりです。

結合条件

結合の問合せを記述するときは、2つのオブジェクトの関係を示す条件を指定します。 この条件を結合条件といいます。 結合条件によって、1つのオブジェクトの行を別のオブジェクトの行とどのように組み合せるかが決定されます。

クエリー・ビルダーは、内部結合、外部結合、左側結合および右側結合をサポートしています。 内部結合単純結合ともいう)は、結合条件を満たす行を戻します。 外部結合は、単純結合の結果を拡張します。 外部結合は、結合条件に一致するすべての行に加え、一方の表では結合条件を満たし、もう一方の表では結合条件を満たさない行のすべてまたは一部を戻します。


参照:

結合条件については、『Oracle Database SQLリファレンス』を参照してください。

オブジェクトの手動結合

「設計」ペインの「結合」列を選択して、結合を手動で作成できます。

2つのオブジェクトを手動で結合するには、次のステップを実行します。

  1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

    クエリー・ビルダーが表示されます。

  2. オブジェクト選択ペインで、結合するオブジェクトを選択します。

    選択したオブジェクトが「設計」ペインに表示されます。

  3. 結合する列を指定します。

    列名の横にある「結合」列を選択して、結合を作成します。 「結合」列はデータ型の右、「削除」アイコンの下に表示されます。 該当する位置にカーソルを置くと、次のヘルプ・ヒントが表示されます。

    Click here to select column for join
    
    
  4. 最初のオブジェクトについて、該当する「結合」列を選択します。

    選択すると、「結合」列が濃い灰色で表示されます。 「結合」列の選択を解除するには、再度その列を選択するか[ESC]を押します。

  5. 2つ目のオブジェクトについて、該当する「結合」列を選択します。


    ヒント:

    2つのオブジェクトをドラッグ・アンド・ドロップして結合することもできます。 最初の表の列を選択し、その列を別の表の列にドラッグ・アンド・ドロップします。

    qry_bldr_join.gifの説明が続きます。
    qry_bldr_join.gifの説明

    オブジェクトが結合されると、2つの列が緑の線で結ばれます。

  6. 問合せに含める列を選択します。 緑の線の上にカーソルを置くと、この結合によって生成されたSQL文を表示できます。

  7. 実行」をクリックして問合せを実行します。

    「結果」ペインに問合せ結果が表示されます。

オブジェクトの自動結合

オブジェクトを自動的に結合する場合は、既存の列における既存の論理的親子関係が、クエリー・ビルダーによって提示されます。

オブジェクトを自動的に結合するには、次のステップを実行します。

  1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

    クエリー・ビルダーが表示されます。

  2. オブジェクト選択ペインから、オブジェクトを選択します。

    選択したオブジェクトが「設計」ペインに表示されます。

  3. オブジェクトの左上にある小さいアイコンをクリックします。 選択したオブジェクトに応じて、アイコン・ラベルに「表の処理」または「処理の表示」と表示されます。

    「アクション」ウィンドウが表示されます。 「アクション」ウィンドウを使用して、現行のオブジェクト内または現行オブジェクトに関連するオブジェクト内にあるすべての列を選択します。

  4. 「アクション」ウィンドウで、適切なオプションを選択します。

    • すべてをチェック: 現行のオブジェクト内の最初の20列を選択するには、このオプションを選択します。

    • 親の追加: 現行のオブジェクトで外部キーとして参照される表が表示されます。

    • 子の追加: 外部キーで現行のオブジェクトを参照する表が表示されます。

    「親の追加」または「子の追加」を使用すると、選択したオブジェクトが表示され、外部キー列が緑の線で結ばれます。

  5. 問合せに含める追加の列を選択します。

    緑の線の上にカーソルを置くと、この結合によって生成されたSQL文を表示できます。

  6. 実行」をクリックして問合せを実行します。

    「結果」ペインに問合せ結果が表示されます。

保存された問合せでの操作

新しい問合せを作成したときは、「設計」ペインの「保存」ボタンをクリックして、問合せを保存できます。 問合せを保存すると、後に「保存されたSQL」ビューでその問合せにアクセスできます。

このセクションの内容は次のとおりです。

問合せの保存

問合せを保存するには、次のステップを実行します。

  1. 問合せを構築します。

    1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

      クエリー・ビルダーが表示されます。

    2. オブジェクト選択ペインで、オブジェクトを選択します。

    3. 「設計」ペインにオブジェクトを追加して、列を選択します。

    4. 問合せを実行します。

  2. 保存」をクリックします。

  3. 名前と説明を入力して、「保存」をクリックします。

    保存された問合せが「保存されたSQL」ビューに表示されます。

qry_bldr_save.gifの説明が続きます。
qry_bldr_save.gifの説明

クエリー・ビルダーでは重複する問合せ名はサポートされていないことに注意してください。 既存の問合せを開き、既存の名前をそのまま使用して再度保存すると、クエリー・ビルダーによって既存の問合せが上書きされます。 既存の問合せの名前を変更して再度保存すると、その問合せはクエリー・ビルダーによって新しい名前で保存されます。

保存された問合せの編集

問合せを保存すると、「保存されたSQL」ビューでその問合せにアクセスできます。

保存されたSQL問合せを編集するには、次のステップを実行します。

  1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

    クエリー・ビルダーが表示されます。

  2. 保存されたSQL」タブを選択します。

  3. 次の方法で表示にフィルタを適用できます。

    • 「所有者」リストから表示内容を選択して、「実行」をクリックします。

    • 「名前」フィールドに検索問合せを入力して、「実行」をクリックします。

  4. 問合せを編集するには、該当する名前を選択します。

    保存された問合せが表示されます。 選択したオブジェクトが「設計」ペインに表示され、「条件」ビューが表示されます。

保存された問合せの削除

保存されたSQL問合せを削除するには、次のステップを実行します。

  1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

    クエリー・ビルダーが表示されます。

  2. 保存されたSQL」タブを選択します。

  3. 削除する問合せを選択し、「チェックした項目の削除」をクリックします。

生成されたSQLの表示

「SQL」ビューには、クエリー・ビルダーによって生成されたSQLが書式設定され、読取り専用で表示されます。 「SQL」ビューに表示されたSQLコードをコピーして、SQLコマンド・プロセッサやアプリケーション・ビルダーなどの他のツールで使用することができます。

「SQL」ビューにアクセスするには、次のステップを実行します。

  1. 「作業領域」ホームページで「SQLワークショップ」をクリックして、「クエリー・ビルダー」をクリックします。

    クエリー・ビルダーが表示されます。

  2. オブジェクト選択ペインで、オブジェクトを選択します。

    選択したオブジェクトが「設計」ペインに表示されます。

  3. 問合せに含める列を選択します。

  4. SQL」タブを選択します。

    クエリー・ビルダーによって生成されたSQLコードが表示されます。

問合せ結果の表示

オブジェクトを選択し、問合せに含める列を決定した後、次の方法で問合せを実行します。

「結果」ビューに、書式設定された問合せ結果が表示されます。 カンマ区切りファイル(.csv)としてレポートをエクスポートするには、ページの下部にある「ダウンロード」リンクをクリックします。

qry_bldr_results.gifの説明が続きます。
qry_bldr_results.gifの説明