Power BIでもSQLって必要?
POWER BI FORUMでは、ExcelやAccess といったMicrosoftのソフトを使いながら、集計業務やレポート作成を行うみなさんに向け、Power BIでさらに便利なレポート作成の方法や機能についてお伝えしています。
今回紹介するのは「SQL」。Power BIを使っていると、耳にしたり、目にしたりする機会も多いのではないでしょうか。
社内業務では、決められたデータサーバーに接続さえしていれば、Excelで集計をしても、Power BIで集計しても、レポートの作成手順には特段差はありません。しかし、レポート作成にあたって「新たにデータソースを用意する」ことが必要になると、そこで求められるのがデータベース接続の知識です。そこで今回は、Power BI初心者でも知っておくと便利な「SQL」について、基礎知識を紹介したいと思います。
SQLは、データベースに問い合わせるための言語
SQLは、データベースの情報をコントロールするためのプログラム言語です。
オラクルデーターベース、Microsoft SQL Server、IBM DB2などのシェアの大きな商業データベース、MySQL、PostgreSQLなど、オープンソースのデータベースはすべて、関係データベース管理システム(RDBMS)という同じ種類のデータベースシステムです。こういった、現在一般的に利用されているデータベース管理システムは、どれもSQLで操作ができるようになっています。
サーバーに膨大な量のデータが格納されているようなケースではSQLを使うのが一般的です。データベースには、さまざまな情報が格納されているため、いろいろな情報が取れるという点で便利な反面、一部の情報だけを使用したい場合や、所定の場所へ新しい情報を書き込む場合には、特別な操作が求められます。そのために使われるのが、データベース管理システムに問い合わせてリクエストを処理させる命令言語(=SQL)です。
SQL言語を使えば、データベース管理システムに接続して、必要なデータだけを受け取ったり、データの形式に一部変換を加え、必要な形状に揃えて受け取ったり、といったことができるようになります。
SQL言語でどんなことができる?
SQL言語を使うことで、次のようなことができます。
・データの取得、追加、削除
・データを取得する際の形式を指定する
・新しいデータベース(テーブル)の作成や保存
SQLは、プログラム言語の中でも比較的シンプルで易しい言語とされています。また、SQLを手で書かなくても、phpMyadminのようにブラウザからGUIによるデータベース操作が可能なSQL対応のツールもあります。
SQL文ってどんなもの?
ここではSQLの雰囲気を掴んでいただくため、SQL言語でデータベースからある列を抽出する命令文を例として紹介します。
SQLで1つの表から、ある特定の列のデータを抽出するには、
________________
SELECT [列名のリスト(複数はカンマ区切り)] FROM [表の名前]
________________
という形式で命令をします。たとえば下のような「Member」という名前の表があるとすれば、
SELECT Name FROM Member
と命令すると、以下のようなデータが抽出できます。
+——————————-+
| Name |
+——————————-+
| 太郎 |
| 暁子 |
| 弘子 |
| 次郎 |
| 有美 |
+——————————-+
このように、短い命令文でもデータベースとやり取りができます。思ったよりも簡単だったのではないでしょうか?
いかがでしたか。今回は、Power BIの接続先としてよく使われるSQLサーバーとそれを扱うための言語SQLについて紹介しました。Power BIでレポート作成だけを行う場合には必要としない知識ですが、データベースからデータを取得する際には、SQLが分かるとよいことがあります。企業で導入している一般的なデータベースは、SQLが分かれば扱うことができ、データ取得の際にデータをあらかじめSQLで加工してPower BIに取り込む、といったことも可能になるからです。そのため、SQLを知っていると、今後Power BIで分析を行う際に、便利なことがあると思います。恐れることなく、少しずつSQLに馴染んでいただければと思います。