Boost」など、さまざまなカンファレンスを企画・運営しています。BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。縦軸と横軸にそれぞれ別項目を割り当てて集計することをクロス集計と言います。例2:縦軸に都道府県、横軸に売上年月を指定した売上金額のクロス集計表このような集計表を出力する場合、SQLでは記述が複雑で、かつレスポンス低下の原因となりがちなクロス集計クエリーを記述しなくてはなりません。MDXであれば、このようなクロス集計表の出力はとても記述が簡単であり、実行速度もはるかに高レスポンスです。MDXに習熟すると、例えばExcelのピボット集計などとは比較にならないほどの複雑なクロス集計を行うことも可能になります。MDXはクロス集計を行うために存在している、と言って良いでしょう。はじめにサンプルキューブから簡単なクロス集計を行ってみます。縦軸に都道府県、横軸に商品分類を指定します。集計するのは数量です。[SURYO]の指定がSELECT句に記述されないため、スライサとしてWHERE句で指定します。ROWSFROM[Sales]WHERE([Measures].[SURYO])このMDXの実行結果は次のようになります。実行結果では次にこのクエリーの縦軸と横軸を逆にしてみましょう。ROWSFROM[Sales]WHERE([Measures].[SURYO])縦軸に商品分類、横軸が都道府県です。入れ替えただけですね。すると、実行結果は次のようになります。簡単に縦軸と横軸が入れ替わりました。今度は、表示する集計項目を増やしてみましょう。ROWS)に[SURYO]と[URIKINGAKU]を含ませます。メジャー指定がSELECT句内に入るため、スライサの記述が不要になります。縦軸のカッコの書き方にも気をつけてください。セットとタプルが入れ子になっています。実行結果は次のようになります。数量と金額がそれぞれ表示されるようになりました。最後に、数量と金額を横に並べてみます。COLUMNS)に入れ替えただけです。実行結果は次のようになります。先ほどは行ごとに数量と金額が並んでいましたが、今度は列ごとに並びました。このように、縦横の軸の内容を変えたクエリー結果が、MDXを「ちょっとだけ」修正することで簡単に取得可能なのです。「ダイシング」と呼ばれる行為です。「多次元データベース」の有効な活用方法がよくお分かりいただけるのではないでしょうか。マサミ)株式会社ヴィバーク代表取締役。BIシステム構築ツール「CubeWalker」を開発しました。2009年10月より発売致します。プラットフォームチームの意義と実践のポイント1DMM.comの施策から見る、事業をむしばむ「技術負債」への処方箋──リファクタリングの「言語化」でインシデントを予防2企業の7割超が「2025年の崖」を理解していないことが明らかに。プラットフォームチームの意義と実践のポイント1DMM.comの施策から見る、事業をむしばむ「技術負債」への処方箋──リファクタリングの「言語化」でインシデントを予防2企業の7割超が「2025年の崖」を理解していないことが明らかに。プラットフォームチームの意義と実践のポイント1DMM.comの施策から見る、事業をむしばむ「技術負債」への処方箋──リファクタリングの「言語化」でインシデントを予防2企業の7割超が「2025年の崖」を理解していないことが明らかに。NEW新着記事一覧を見るイベント今後の予定を見るCodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。イラストの無断転載を禁じます。記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。