SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ビジネスデータ解析のためのSQL入門

SQLクライアントはこれひとつでOK! あらゆるDBMSで使える「SQL Workbench/J」をデータ解析で活用しよう

ビジネスデータ解析のためのSQL入門 第7回


  • このエントリーをはてなブックマークに追加

 本シリーズではビジネスデータ解析でデータベースから情報を取得して活用する必要がある方を対象に、ビジネスデータ解析でよく使われる実践的なSQL例など、分析向けの活用を解説します。本稿では、さまざまなデータベースに接続する必要があるデータ解析の際に役立つ、フリーのSQLクライアントツール「SQL Workbench/J」の活用方法を解説します。導入・データベース活用手順を解説しデータ解析の際に役立つ機能を紹介します。

  • このエントリーをはてなブックマークに追加

対象読者

  • SQLの基本は理解しているがより実践的な分析に取り組みたい方

サンプルの動作確認環境

  • MacOS 10.13
  • PostgreSQL 9.6

SQL Workbench/Jの概要と導入

 本稿で取り扱うツール「SQL Workbench/J」とは何かを簡単にご紹介し、本ツールの導入方法についてご紹介します。

SQL Workbench/Jとは

 SQL Workbench/JはThomas Kellerer(ドイツ在住)により作成・提供されている、フリーのSQLクライアントツールです。Javaランタイム上で動くOS非依存のJavaアプリケーションで、ライセンスの利用規約としては一部(特定の国の政府機関など)利用を制限しています。日本での利用では特に問題はありません。

SQL Workbench/Jのメイン画面
SQL Workbench/Jのメイン画面

 主な使い方は下記になります。

  • DBMSへの接続設定する
  • SQLを記述する
  • 問い合わせ結果のテーブルを表示する

 画面上部にある「Statement」と表示された入力フォームにSQL文を記述します。SQL実行はナビゲーション左上にある右向き三角のボタン(またはメニュー「SQL」>「Execute Selected」)より行います。実行結果は画面下部の「Result(Message)」と示された領域に表示されます。

 SQL Workbench/JはJDBCを利用した非常にシンプルな構成になっているため、ローカルで利用するGUIクライアントツールにもかかわらずブラックボックス部分が少なく、接続時のエラー検証などがしやすいといった特徴があります。筆者は新しいDBに接続する際、まずSQL Workbench/Jを用いて接続してみて、問題あればエラーの内容に対応する、といった使い方をしています。

[コラム]JDBCとは

 JDBCはJavaによりDBMSの接続を行う規格です。JDBCを利用することにより、JavaではDBMSごとに接続実装をする必要が無くなります。SQL Workbench/JはDBMS接続のモジュールをツール内部にもたず、JDBCを利用する形式にしたことでDBMSに依存しないツールになっています。ユーザーはJDBCドライバファイルを自分で用意する必要があります。

SQL Workbench/Jを利用するメリット

 SQL Workbench/Jを利用する際のメリットをいくつか紹介します。

①さまざまなDBMSで利用できる

 SQL Workbench/Jはデータベース管理システム(以下DBMS)との接続をJDBCに任せているため、ユーザーが自由に各DBMS向けのJDBCドライバ(jarファイル)を設定することができます。そのためJDBCドライバさえ入手できればさまざまなDBMSと接続しSQLを実行できます。

 いくつか例を挙げると、下記のDBMSで動作検証されています。

  • Oracle
  • SQL Server
  • MySQL
  • PostgreSQL

 また、AWSではオフィシャルヘルプでRedshiftに接続するためのクライアントツールとしてSQL Workbench/Jを紹介・推奨しており、その際にこのツールを知ったという方もいらっしゃるでしょう。

 上記以外のDBMSでも動作検証されています。詳しくはこちらを参照してください。

②GUIによる操作

 SQL Workbench/Jは視認性の高い表の形で表示できるため、データ解析で利用する集計結果を効率よく確認することができます。

 またGUIならではの機能を用いて直観的にSQL操作を行うことができます。

 逆にSQL Workbench/Jを利用する際のデメリットとしては、インストールする(設定する)手間がかかる点が挙げられます。導入手順は次の章で紹介していきます。

SQL Workbench/Jの導入手順

 SQL Workbench/J導入の大まかな流れは下記になります。

  1.  JRE(Javaランタイム)を導入する
  2.  SQL Workbench/Jツールを導入する
  3.  JDBCを導入する

 それぞれ見ていきます。

①JRE(Javaランタイム)を導入する

 まず動作環境としてJava(Java 8以上のJRE)が必要です。Javaがすでに導入済みであればこのステップはスキップしてください。著者の環境では、バージョン9や10で正常動作が確認できませんでした。動作しない場合はJava 8による環境構築を検討してください。

 Javaが導入済みでない場合はOSにJREをインストールします。下記サイトよりお使いのOSの環境に合わせてファイルダウンロードし、設定してください。下記はJava 8のものを示しておきます。

 以降の記事内では操作画面としてMac版を使用していますが、Windowsでも同様の操作になります。

②SQL Workbench/Jツールを導入する

 次にSQL Workbench/J本体をインストールします。SQL Workbench/Jは、専用ホームページのダウンロード画面(下記)より入手してください。

SQL Workbench/Jダウンロード画面
SQL Workbench/Jダウンロード画面

 画面の「Download generic package for all systems」リンク(Macの場合はその下のリンク)からファイルをダウンロードします。ZIPファイルがダウンロードされますので、任意の場所に解凍してください。

 Windowsの場合、SQL Workbench/Jのインストールフォルダの「SQLWorkbench64.exe(OSが64bitでない場合はSQLWorkbench.exe)」をクリックするとツールが立ち上がります。

③JDBCを導入する

 次にJDBCを導入します。PostgreSQLに接続する場合を例にとって説明します。PostgreSQLのJDBCは下記から入手できます。

 Java8以上向けの最新バージョンをダウンロードします。執筆時点(2018年4月)ではVersion42.2.2になります。

PostgreSQL JDBCダウンロード画面
PostgreSQL JDBCダウンロード画面

 PostgreSQLのJDBCドライバをURLからダウンロードし、jarファイルを任意のフォルダに格納します。導入はいったんこれで完了です。次に、データベース接続の設定およびSQL実行までを見ていきます。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
データベース接続とSQLクエリの実行

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
ビジネスデータ解析のためのSQL入門連載記事一覧

もっと読む

この記事の著者

WINGSプロジェクト 西 潤史郎(ニシ ジュンシロウ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS Twitter: @yyamada(公式)、@yyamada/wings(メンバーリスト) Facebook<個人紹介>フリーランスとしてデータ解析エンジニアとして主にビッグデータ関連の仕事をしています。TableauなどBIやビッグデータ処理などビジネスデータ解析環境の構築・運用、また解析系のアプリケーション開発やGoogleアナリティクス活用支援などを行っています。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/10788 2018/05/15 17:58

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング