Oracle データベースと Microsoft Excel の連携ツール KeySQL 5.0 操作概要 Vol. 2 検索編 2004 年 7 月 テニック株式会社 はじめに > 本資料の目的 本講習会では KeySQLをはじめてお使いになる方を対象として Oracleクライアントのインストールから KeySQL の基本的な使用方法までをご説明いたします 実際にアプリケーションを操作しながら実習を進めてまいりますので KeySQLの容易な操作性をご理解頂けるかと思います 皆様のビジネスにおきまして KeySQLを活用していただく契機となれば幸いです 2
はじめに > 全体の流れ 1 章 Oracle Clientのインストール 2 章 KeySQLのインストール 3 章 KeySQLの起動とDBへのログイン 4 章操作の前に知っておきたいこと 5 章検索操作の基本 6 章検索条件設定 7 章グループ設定 8 章ソート設定 9 章表結合 (JOIN) 操作 10 章データの更新 11 章データの追加と削除 12 章 KeySQLマクロの保存と実行 13 章 Excelアプリケーションの作成 14 章その他便利な機能 3 4 章操作の前に知っておきたいこと 操作の前に 画面の構成やヘルプの使い方などについて説明します < 目次 > 4-1. メインウィンドウの各部の名称 4-2. ツールバーの各ボタンの説明 4-3. ヘルプ画面の表示 4-4. ヘルプの 目次 の利用方法 4-5. ヘルプの キーワード の利用方法 4-6. ヘルプの 検索 の利用方法 4-7. 作業状態の設定画面の表示 4-8. 作業状態設定の変更方法 4-9. サンプルテーブルの説明 4
4 章操作の前に知っておきたいこと 4-1. メインウィンドウの各部の名称 操作の基本となる メインウィンドウ は 以下のような構成になっています メニューバー ツールバー テーブル一覧 ワークスペース テーブルボックス 検索項目リスト ワークシート プロパティウィンドウ 条件リスト 5 4 章操作の前に知っておきたいこと 4-2. ツールバーの各ボタンの説明 ツールバーの各ボタン / ボックスついて 機能を簡単に説明します 基本のボタン : ヘルプを表示します : ログアウトします : オブジェクトのプレビューを行います : ワークシートを新規に作成します : 検索を実行します : マクロファイルを読み込みます : 追加 / 更新 / 削除を実行します : 検索内容をマクロに保存します : 検索結果のプレビューを行います : ワークシートの初期化を行います : 作業状態設定を行います : 貼付け先のアプリケーションを選択します Excel 97~2003 のほか CSV / HTML 形式にも対応 : 出力先ブック名とシート名を指定します 保存済みのブックに出力する場合 拡張子.xlsを付ける必要があります( 例 :[ 売上.xls]Sheet1) : 出力先の先頭セル位置を指定します Excel 標準の A1 形式でも指定可能です 6
4 章操作の前に知っておきたいこと 4-3. ヘルプ画面の表示 ヘルプ(H) メニューから 目次(C) を選択するか ( ヘルプ ) ボタンをクリックして ヘルプ画面を表示します 7 4 章操作の前に知っておきたいこと 4-4. ヘルプの 目次 の利用方法 目次 タブを選択し 表示したい項目をツリーから選んでクリックします 8
4 章操作の前に知っておきたいこと 4-5. ヘルプの キーワード の利用方法 キーワード タブを選択し キーワードを入力後 Enter ボタンを押します 下のリストボックス候補が表示されるので 該当するものをクリックします 9 4 章操作の前に知っておきたいこと 4-6. ヘルプの 検索 の利用方法 検索 タブを選択し キーワードを入力後 検索開始 ボタンを押します 下のリストボックスに入力したキーワードが含まれるトピックが表示されるので 該当するものをクリックします 10
4 章操作の前に知っておきたいこと 4-7. 作業状態の設定画面の表示 ( 作業状態設定 ) ボタンをクリックして 設定画面を表示します 11 4 章操作の前に知っておきたいこと 4-8. 作業状態設定の変更方法 検索 更新 タブを選択します ここでは検索 更新時の設定を変更することができます 設定を変更したら OK をクリックします 今回の実習を行うにあたっては 上の画面と同じ設定項目にチェックを入れてください 12
4 章操作の前に知っておきたいこと 4-9. サンプルテーブルの説明 本講習会では サンプルとして以下の 2 つのテーブルを使用します EMP 表 ( 社員表 ) DEPT 表 ( 部門表 ) 部署番号で 2 つの表が関連付けられている 13 5 章検索操作の基本 表の全データや 一部の列を指定しての検索を行います < 目次 > 5-1. テーブル内容の確認 5-2. 検索項目の指定 ( 表の全データ ) 5-3. 検索の実行 5-4. Excelへの検索結果の貼り付け 5-5. ワークシートの初期化 5-6. 検索項目の指定 ( 複数列指定 1) 5-7. 検索項目の指定 ( 複数列指定 2) 5-8. 検索結果のプレビュー 14
5 章検索操作の基本 5-1. テーブル内容の確認 テーブル一覧 から SCOTT スキーマの EMP 表を選択し ( テーブルプレビュー ) ボタンを押すとテーブル内容を確認できます 15 5 章検索操作の基本 5-2. 検索項目の指定 ( 表の全データ ) EMP 表の全データを検索してみましょう テーブル一覧 から EMP 表を選択( マウスでクリック ) し そのまま 検索項目 へドラッグアンドドロップします 表を選択してドラッグ & ドロップ EMP 表の全列が 検索項目に指定されました 16
5-3. 検索の実行 5 章検索操作の基本 ( 検索実行 ) ボタンを押すと 確認画面 が表示されます OK をクリックすると検索が実行されます 17 5 章検索操作の基本 5-4. Excel への検索結果の貼り付け Excelが自動的に起動し 検索結果がBook1のSheet1に貼り付けられました このまま使い慣れたExcelを使用して レポートやグラフ作成などが可能です SELECT * FROM EMP 18
5 章検索操作の基本 5-5. ワークシートの初期化 次の操作に入る前に いったん画面を元に戻します ( ワークシート初期化 ) ボタンを押すと 確認画面 が表示されます OK をクリックすると ワークシートが初期化されます 19 5 章検索操作の基本 5-6. 検索項目の指定 ( 複数列指定 1) EMP 表から ENAME 列と SAL 列だけを取り出してみましょう テーブル一覧 の EMP 表をダブルクリックし 表示された列の中から ENAME を選択し そのまま 検索項目 へドラッグアンドドロップします テーブル一覧から列を選択してドラッグ & ドロップ 指定した列が検索項目に追加されました 20
5 章検索操作の基本 5-7. 検索項目の指定 ( 複数列指定 2) 列の指定は ワークスペース からも行うことができます テーブルボックス に表示されている列名の中から今度は SAL を選択し そのまま 検索項目 の2 番目のセルへドラッグアンドドロップします テーブルボックスからドラッグ & ドロップ 指定した列が検索項目に追加されました 21 5 章検索操作の基本 5-8. 検索結果のプレビュー ( 検索プレビュー ) ボタンを押すと 検索結果をプレビューできます 確認後 再びワークシートの初期化 ( 5-5 参照 ) を行ってください SELECT ENAME, SAL FROM EMP 22
6 章検索条件設定 文字列や数値による条件を指定して 検索を行います < 目次 > 6-1. 検索条件の入力 ( 文字列 ) 6-2. 検索条件の確定 6-3. 検索条件の入力 ( 数値 ) 6-4. 検索条件のキャンセル 6-5. 条件間の論理式の表示 6-6. 検索結果のプレビュー 23 6 章検索条件設定 6-1. 検索条件の入力 ( 文字列 ) " JOB が SALESMAN の社員 " という検索条件を設定してみましょう 1 検索項目に EMP 表の全項目( 5-2 参照 ) を指定します 2 検索条件 タブを選択します 3 JOB 列を選択し 検索条件リスト へドラッグアンドドロップします 4 検索条件式の右辺に SALESMAN と入力します 1 3 2 列を選択してドラッグ & ドロップ 4 24
6 章検索条件設定 6-2. 検索条件の確定 ( 入力条件式の挿入 ) ボタンを押して 入力した条件式を確定します 条件式が確定された状態 25 6 章検索条件設定 6-3. 検索条件の入力 ( 数値 ) 先ほどの条件に SAL が 1500 以上という条件を追加してみましょう 1 SAL 列を選択し 検索条件リスト の2 行目にドラッグアンドドロップします 2 ( 以上 ) ボタンをクリックして 演算子を変更します 3 検索条件式の右辺に 1500 と入力します 1 2 列を選択してドラッグ & ドロップ 3 26
6 章検索条件設定 6-4. 検索条件のキャンセル ( 入力条件式の挿入 ) ボタンを押して 入力した条件式を確定します 次の行に移ったら 他に入力する条件はないので ( 条件式入力取りやめ ) ボタンで押してキャンセルします 条件式が確定された状態 27 6 章検索条件設定 6-5. 条件間の論理式の表示 ( 論理式入力 ) ボタンを押すと 入力された条件間の関連が論理式で表示されます 今回は AND 条件 (AかつB) のままでよいので このままボタンで閉じてしまいます 28
6 章検索条件設定 6-6. 検索結果のプレビュー ( 検索プレビュー ) ボタンを押すと 以下の検索結果が表示されます 確認後 再びワークシートの初期化 ( 5-5 参照 ) を行ってください SELECT * FROM EMP WHERE JOB = SALESMAN AND SAL >= 1500 29 7 章グループ設定 グループ関数を利用したグループ設定を行います < 目次 > 7-1. 検索項目の設定 ( グループ関数 ) 7-2. 検索項目詳細画面の表示 7-3. グループ関数入力画面 7-4. グループ関数入力の決定 7-5. 検索結果のプレビュー 7-6. グループ条件設定方法 7-7. グループ条件の入力 7-8. 検索結果のプレビュー 30
7 章グループ設定 7-1. 検索項目の設定 ( グループ関数 ) " JOB ごとの SAL の最小 最大 平均" を検索してみましょう 以下のとおり 検索項目に EMP 表の JOB と SAL を3 列の計 4 項目を設定します 検索項目の指定の仕方は "5-6~7" を参照してください 31 7 章グループ設定 7-2. 検索項目詳細画面の表示 検索項目の2 番目のセルをダブルクリックすると 検索項目詳細画面 が表示されるので ( グループ関数入力 ) ボタンを押します 32
7 章グループ設定 7-3. グループ関数入力画面 グループ関数入力画面 が表示されるので 左の なし となっているプルダウンメニューから 最小 を選択し ボタンで確定します 再び 検索項目詳細画面 に戻るので 貼付け項目名 に MIN と入力し ボタンで確定します 33 7 章グループ設定 7-4. グループ関数入力の決定 同様のやり方で 3 番目のセルには 最大 ( 項目名 MAX) を 4 番目のセルには 平均 ( 項目名 AVG) を設定します 34
7 章グループ設定 7-5. 検索結果のプレビュー ( 検索プレビュー ) ボタンを押すと 以下の検索結果が表示されます SELECT JOB, MIN(SAL), MAX(SAL), AVG(SAL) FROM EMP GROUP BY JOB 35 7 章グループ設定 7-6. グループ条件設定方法 先ほどグループ設定を行ったシートに対し さらに " SAL の平均が1000 台 " という条件を追加してみましょう グループ条件 タブを選択します 36
7 章グループ設定 7-7. グループ条件の入力 以下の手順で " SAL の平均が 1000 台 " というグループ条件を入力します 1 SAL 列を 条件リスト へドラッグアンドドロップします 2 カーソルを左辺に移し ( グループ関数入力 ) ボタンを押します 3 ドロップダウンメニューから 平均 を選択し ボタンで確定します 4 ドロップダウンメニューから BETWEEN 演算子を選択します 5 条件式の右辺に 1000 と 1999 を入力し ボタンで確定します 1 2 3 4 5 37 7 章グループ設定 7-8. 検索結果のプレビュー ( 検索プレビュー ) ボタンを押すと 以下の検索結果が表示されます 確認後 再びワークシートの初期化 ( 5-5 参照 ) を行ってください SELECT JOB, MIN(SAL), MAX(SAL), AVG(SAL) FROM EMP GROUP BY JOB HAVING AVG(SAL) BETWEEN 1000 AND 1999 38
8 章ソート設定 データの並び替えを行います < 目次 > 8-1. 検索項目の設定 ( ソート ) 8-2. ソートの設定 8-3. 検索結果のプレビュー 39 8 章ソート設定 8-1. 検索項目の設定 ( ソート ) データを入社日が遅い順 ( 降順 ) に並べ替えてみましょう 以下のとおり 検索項目に EMP 表の ENAME JOB HIREDATE 列を設定します 検索項目の指定の仕方は "5-6~7" を参照してください 40
8 章ソート設定 8-2. ソートの設定 ソート タブを選択し HIREDATE 列を 条件リスト へドラッグアンドドロップします ( 降順 ) ボタンをクリックして 昇順から降順に切り替えます 後に DESC が付くと降順に設定された状態 41 8 章ソート設定 8-3. 検索結果のプレビュー ( 検索プレビュー ) ボタンを押すと 以下の検索結果が表示されます 確認後 再びワークシートの初期化 ( 5-5 参照 ) を行ってください SELECT ENAME, JOB, HIREDATE FROM EMP ORDER BY HIREDATE DESC 42
9 章表結合 (JOIN) 操作 表同士を結合し 複数の表から項目を一度に検索します < 目次 > 9-1. 検索項目の設定 ( 表結合 ) 9-2. 表結合候補の表示 9-3. 表結合条件の設定 9-4. 検索結果のプレビュー 43 9 章表結合 (JOIN) 操作 9-1. 検索項目の設定 ( 表結合 ) EMP 表と DEPT 表を結合して 各社員がどこ (LOC) にあるなんという部署 (DNAME) に所属しているのか検索してみましょう 以下の通り 検索項目を設定します 1 番目 : EMP 表の ENAME 列 2 番目 : DEPT 表の DNAME 列 3 番目 : DEPT 表の LOC 列 <EMP 表 > <DEPT 表 > 44
9 章表結合 (JOIN) 操作 9-2. 表結合候補の表示 検索項目を設定すると ワークスペース に表示された EMP 表の DEPTNO と DEPT 表の DEPTNO を結ぶ線が現れます 結合の候補となる項目同士が線で結ばれる 45 9 章表結合 (JOIN) 操作 9-3. 表結合条件の設定 以下の手順で 表結合条件の設定を行います 1 DEPTNO 同士を結ぶ線上にカーソルを移動し 右クリックします 2 メニューが表示されるので 表結合条件へ追加 (A) を選択します 3 表結合 タブに条件式が表示されるので ボタンで確定します 1 2 3 46
9 章表結合 (JOIN) 操作 9-4. 検索結果のプレビュー ( 検索プレビュー ) ボタンを押すと 以下の検索結果が表示されます 確認後 再びワークシートの初期化 ( 5-5 参照 ) を行ってください SELECT EMP.ENAME, DEPT.DNAME, DEPT.LOC FROM EMP, DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO <SQL99 準拠の場合 > SELECT EMP.ENAME, DEPT.DNAME, DEPT.LOC FROM EMP JOIN DEPT USING (DEPTNO) SELECT EMP.ENAME, DEPT.DNAME, DEPT.LOC FROM EMP JOIN DEPT ON (EMP.DEPTNO = DEPT.DEPTNO) 47 48