PowerQuery
とエディタ上で利用するM言語(PowerQuery M)について調べた際にだいぶ混乱したのでまとめ。
PowerQueryとはなんぞや
そもそもPowerQuery
がなんなのか調べはじめると理解しづらい気がします。(検索するとPowerBIやExcelが色々と引っかかる)
自分なりに読み込んで要約すると、
PowerQuery
はデータソースからデータを抽出、加工、接続を行う機能を提供する基盤。
検索結果にPowerBI
やExcel
が出てくるのは。
-
PowerBI
ではデータ操作を行う基盤としてPowerQuery
を使って動作している。 -
Excel
はExcel 2016
からデータの抽出部分としてPowerQuery
が標準機能となっている。(それ以前はPowerQueryアドインとして提供されていた)
それぞれPowerBI
やExcel 2016以降
でPowerQuery
を利用する事ができます。
長年Excel
をさわっている人はExcel 2016以降
になってデータ取込が変わった? という部分で少し意識していたかもしれません。
余談ですが以前のExcel
でファイルをインポートするときに利用されていたインポートウィザードについては。 オプションでレガシデータインポートウィザードとして残っており。 このオプションを有効にすれば今現在も使えるようになりますが、基本わざわざ選択する用途はなさそう?
M言語(PowerQuery M)とはなんぞや
PowerQuery
で調べているとM言語
というキーワードが目につきます。
検索するとJIS規格にもなっているMUMPS(Massachusetts general hospital Utility Multi-Programming System)という言語がひっかかったりしますがこれは関係ない。
wikipedia - MUMPSをみると1960年代末にアメリカのマサチューセッツ総合病院で医療情報処理用のアプリケーションを開発し実行するために開発された、プログラミング言語とその環境である。とか書いてありますが関係なし。
PowerQuery M
はもともとはPowerQuery
とは関係ないプラットフォームのデータモデリング言語の言語コードネームだったらしい。
歴史的経緯や紆余曲折やらいろいろあって今現在はPowerQuery M
として存在しているらしい。
(Microsoft “OSLO”プラットフォームのデータモデリング言語でMというコードネームで登場したのが初出のようです)
PowerQuery M
はPower Query Formula Language
とも呼ばれてたりして、歴的な経緯からなのかいろいろな呼ばれ方があり理解しにくい気がします。
ともかくPowerQuery
のエディタで、詳細ビューにかかれている式がM言語
のようです。
PowerQuery
やらPowerBI
は便利ですが、最初ここらへん調べ始めると混乱するのがツライ。
そんなM言語
ですが、基本的にはPowerQueryエディターでGUIを操作する事で、裏でその操作がM言語で記述されていくため、ちょっと込み入った事をPowerQueryでやりたいときには触れる必要がでてくるかと思います。
ドキュメント
ここまで色々と記載してみましたが。2022年現在はMS Docs
にM言語のドキュメント・リファレンスがあります。
PowerQUery、M言語を知るにはここを参照するのがわかりやすいです。
総評
PowerQuery
はすごい便利ですが、最初のとっかりとして検索するとちょっと混乱するといった感じが自分はあったのでまとめてみました。