LWP | GROUPBYとPIVOTBYはどう使い分ける?
GROUPBYとPIVOTBYはどう使い分ける?
~「掘り下げる集計」と「交差させる集計」で考える~
Copyright © 2026 LWP 山中 一弘
本資料は、出典を明記いただければ、商用・非商用を問わず、ご自由に複製・改変・再配布していただけます。なお、著作権表示は改変せず、そのまま記載してご利用くださいますようお願いいたします。
記事要約
GROUPBYとPIVOTBYは、どちらも明細データを分類して集計表を作る関数です。違いを「GROUPBYは1項目、PIVOTBYは2項目」と捉えると、複数項目を扱う場面で判断できなくなります。
大切なのは項目数ではなく、分類同士の関係と結果の見せ方です。同じ分類体系を一方向へ掘り下げるならGROUPBY、異なる分類軸を行と列へ配置し、交点を比較するならPIVOTBYが自然です。最終的には、どの表が知りたいことを最も分かりやすく表現できるかで選びます。
1 まず「何を集計したいのか」を考える
関数を選ぶ前に、元データからどのような集計表を作りたいのかを決めます。同じ売上明細でも、エリア別の合計、エリアから支社へ掘り下げる表、エリアと担当者を交差させる表では、答えたい問いが異なります。

図1|関数名から考え始めず、先に「どの分類を、どの形で見たいか」を決めます。
2 GROUPBYは分類を縦に掘り下げる
エリア、支社、店舗のように、同じ分類体系を大分類から小分類へ詳しく見る場面ではGROUPBYが自然です。観点を増やすというより、一方向の分類の粒度を細かくしていく表です。

図2|GROUPBYは、上位分類から下位分類へ進む階層的な集計に向いています。
3 異なる2項目でもGROUPBYできる
GROUPBYは、明確な親子関係を持つ項目だけに限定されません。エリアと担当者のような異なる項目でも、その組み合わせごとに集計し、結果を縦方向の一覧として並べられます。
GROUPBYの行フィールドには複数列を指定できます。複数列を階層として扱うか、独立した表形式のフィールドとして扱うかは、集計結果の並び方や小計の意味も含めて判断します。

図3|「異なる項目だからPIVOTBY」とは限らず、組み合わせを一覧で読みたいならGROUPBYも使えます。
4 PIVOTBYは2つの分類を縦と横に展開する
同じ「エリア×担当者」の売上でも、一方を行、もう一方を列へ配置すると交差表になります。PIVOTBYは、各セルを2つの分類の交点として読み、横方向・縦方向の比較を表の構造に組み込みます。

図4|PIVOTBYでは、行の分類と列の分類を交差させて比較します。
5 どんな2項目でもPIVOTBYにすればよいわけではない
エリアと支社には包含関係があります。東京支社は東日本に属するため、「西日本×東京」のような組み合わせは通常成立しません。この2項目を無理に縦横へ展開すると、意味を持たない空白セルが増えます。

図5|作成できる表と、分析上自然な表は別です。交点が成立するかを確認します。
6 「階層」と「異なる分析軸」を分けて考える
エリアから支社、商品分類から商品へ進む関係は、同じ分類体系の粒度を変える階層です。一方、エリアと担当者、担当者と月のような関係は、それぞれ別の方向からデータを見る分析軸です。

図6|列名が異なるかではなく、一方がもう一方の詳細分類かどうかで関係を見ます。
7 PIVOTBYにも階層は作れる
PIVOTBYは、行方向と列方向のそれぞれに複数のフィールドを指定できます。たとえば行に「エリア→支社」、列に「商品分類→商品」を置けば、2つの階層を交差させた集計表になります。

図7|PIVOTBYの特徴は階層がないことではなく、行と列という2方向を持つことです。
8 GROUPBYかPIVOTBYかを判断する
まず完成させたい表を考え、分類を一方向へ詳しく見たいならGROUPBYを候補にします。異なる2つの観点を比較したいなら、次にそれぞれの交点へ意味があるかを確認し、成立するならPIVOTBYを候補にします。

図8|項目数ではなく、分類を掘るのか、交差させるのかという順序で判断します。
9 同じ集計でも読み方が違う
GROUPBYで作った一覧は、分類の組み合わせを上から順に確認し、後続の加工へ渡しやすい形です。PIVOTBYで作った交差表は、同じ行の横比較や同じ列の縦比較をしやすく、比較そのものが配置に表れます。

図9|集計値が同じでも、一覧として読むか、比較表として読むかで適した形が変わります。
10 「項目数」ではなく「関係」と「見せ方」で決める
GROUPBYでも複数項目を指定でき、PIVOTBYでも行・列それぞれに複数階層を持たせられます。そのため「1項目ならGROUPBY、2項目ならPIVOTBY」という覚え方では不十分です。

図10|一方向へ整理するGROUPBYと、行列へ展開するPIVOTBYの違いを表の目的から捉えます。
11 まとめ
迷ったときは、同じ分類体系を下へ掘りたいのか、異なる分類軸を横へ掛けたいのかを考えます。さらに、縦と横の交点に比較する意味があるかを確認します。

図11|掘るならGROUPBY、掛けて交点を見るならPIVOTBYが基本の判断軸です。
GROUPBYは分類結果を一方向へ整理し、PIVOTBYは2つの軸の交点を比較しやすくします。どちらが高機能かではなく、知りたいことが自然に読める表を選ぶことが、集計表設計の要点です。
出典メモ
記事原案:『GROUPBYとPIVOTBYはどう使い分ける?― 集計表の設計から考える』
掛け合いインフォグラフィック:シャケもん、アユさん、コイ丸先輩(全11点。章ごとに必要な配役を採用)
Microsoft Support「GROUPBY function」:1方向のフィールドによるグループ化、集計、並べ替え、フィルター、および複数行フィールドを確認
Microsoft Support「PIVOTBY function」:行と列の2方向によるグループ化、集計、および各方向の複数グループレベルを確認
