n8nでワークフローを組んでいると、データが複数のアイテムに分割されてしまい、扱いに困った経験はありませんか。
例えば、APIから取得したデータや、スプレッドシートの複数行のデータは、n8n上ではそれぞれが独立した「アイテム」として扱われます。
このままでは、後続のノードでデータをまとめて処理できず、非効率です。
この課題を鮮やかに解決してくれるのが、今回ご紹介するAggregateノードです。
この記事を読めば、Aggregateノードの基本的な仕組みから、実践的な使い方、そして業務効率を劇的に向上させる応用テクニックまで、体系的に理解できます。
2026年2月時点の最新情報に基づき、データ集計のプロフェッショナルを目指しましょう。
n8nのAggregateノードとは?基本的な役割と仕組み
まずは、Aggregateノードがどのようなもので、なぜ必要なのか、その基本的な概念から押さえていきましょう。このノードの本質を理解することが、使いこなしへの第一歩です。
Aggregateノードの存在意義:なぜデータ集計が必要なのか?
n8nにおける「アイテム」とは、処理の基本単位となるデータのかたまりです。多くのノードは、入力されたアイテムの数だけ処理を繰り返します。例えば、10個のアイテムが入力されれば、後続のノードは10回実行されます。
しかし、ワークフローによっては「バラバラのデータを一度一つにまとめてから、次の処理に進みたい」というケースが頻繁に発生します。具体的には、以下のような場面です。
- 複数のAPIリクエスト結果を統合して、1つのレポートを作成したい
- Googleスプレッドシートの全行のデータを読み込み、集計・分析したい
- データベースから抽出した顧客リストを、1通のメールでまとめて送信したい
このような場合に、複数のアイテムを単一のアイテムに「集約(Aggregate)」するのが、Aggregateノードの主な役割です。このノードを使わなければ、データは分散したままであり、n8nの能力を最大限に引き出すことは難しいでしょう。n8nでのデータハンドリングにおいて、まさに「縁の下の力持ち」と言える重要なノードなのです。
基本的な設定項目と動作モード
Aggregateノードを理解する上で重要な設定項目は主に2つです。「Aggregate By」と「Mode」です。これらを組み合わせることで、様々なデータ集計が可能になります。
- Mode: Merge
これが最も基本的なモードです。入力されたすべてのアイテムを、指定したフィールドに配列(Array)として格納し、1つのアイテムにまとめます。例えば、10個のアイテムが入力されれば、10個の要素を持つ配列を含んだ、たった1つのアイテムが出力されます。 - Aggregate By: Index / Field
この設定は、アイテムをどのようにグループ化して集計するかを定義します。- Index: 入力されたアイテムのインデックス(順番)に基づいてグループ化します。例えば、「3」と設定すると、3つのアイテムごとに1つのグループとしてまとめられます。
- Field: 指定したフィールド(キー)の値が同じアイテム同士をグループ化します。例えば、「顧客ID」をキーに指定すれば、同じ顧客IDを持つアイテムが一つにまとまります。
まずは「Mode: Merge」と「Aggregate By: Index」で「1」以上の数値を指定する(もしくは無指定ですべてをまとめる)のが、最もシンプルな「全アイテムを1つにまとめる」使い方だと覚えておきましょう。
簡単な例:複数のJSONアイテムを1つの配列にまとめる
百聞は一見にしかずです。簡単なワークフローでAggregateノードの動きを見てみましょう。
Step1: ダミーデータの作成
まず、Codeノードを使って、3つの異なるJSONアイテムを作成します。
// Codeノードの例
return [ { json: { "user_id": 1, "name": "Aさん" } }, { json: { "user_id": 2, "name": "Bさん" } }, { json: { "user_id": 3, "name": "Cさん" } }
];このノードを実行すると、3つのアイテムが出力されます。
Step2: Aggregateノードの設定
次に、Aggregateノードを接続します。設定はデフォルトのままでOKです(Mode: Merge)。
Step3: 結果の確認
Aggregateノードを実行すると、出力は1つのアイテムになります。その中身を確認すると、dataという新しいフィールドが作られ、その中に元の3つのアイテムが配列として格納されているのがわかります。
// Aggregateノードの出力結果(簡略版)
[ { "data": [ { "user_id": 1, "name": "Aさん" }, { "user_id": 2, "name": "Bさん" }, { "user_id": 3, "name": "Cさん" } ] }
]このように、Aggregateノードは非常に簡単に、バラバラだったデータを構造化された1つのデータに変換できるのです。
【実践編】Aggregateノードの具体的な使い方とユースケース
基本的な仕組みを理解したところで、次はより実践的なユースケースを見ていきましょう。実際の業務で出くわすであろうシナリオを通じて、Aggregateノードの活用方法を具体的にイメージしてください。
ユースケース1:スプレッドシートの複数行を1つのJSONにまとめる
GoogleスプレッドシートやAirtableからデータを取得する際、各行はn8n上で個別のアイテムになります。これらの全行データをまとめてAPIに送信したり、レポートを作成したりするケースは非常に多いです。
ワークフロー例:
- Google Sheetsノード: 特定のシートから複数行のデータを取得します。Operationは「Read Sheet」を選択します。
- Aggregateノード: Google Sheetsノードに接続します。設定はデフォルトの「Mode: Merge」のままで、すべての行データ(アイテム)を1つのアイテムに集約します。
- 後続のノード(例: HTTP Requestノード): 集約されたデータをJSONとして外部APIに送信します。Aggregateノードのおかげで、APIへのリクエストを1回で済ませることができ、効率的かつサーバーへの負荷も軽減できます。
このテクニックは、n8nで最もよく使われるパターンの一つです。もしスプレッドシートのデータをうまく扱えないと感じたら、それはAggregateノードの使い時かもしれません。
ユースケース2:APIから取得した複数ページのデータを統合する
多くのAPIは、一度に取得できるデータ量に制限があり、「ページネーション」という仕組みを採用しています。例えば、1000件のデータがあっても、1回のリクエストでは100件ずつしか取得できず、10回のリクエストが必要になるケースです。
n8nのHTTP Requestノードには、このページネーションに自動で対応する機能がありますが、最終的にデータはページごとに分割されたアイテム群として出力されます。これらを1つのデータセットとして扱うために、Aggregateノードが活躍します。
ワークフロー例:
- HTTP Requestノード: ページネーション機能を使って、APIから複数ページのデータを取得します。
- Aggregateノード: すべてのページのデータを1つの配列にまとめます。
- Spreadsheet Fileノード: 統合した全データを1つのCSVファイルとして出力し、メールで送信する、といった処理が可能になります。
これにより、APIから取得した全件データを簡単にファイル化したり、データベースに保存したりできるようになります。
ユースケース3:条件に合うデータだけをフィルタリングして集計する
Aggregateノードは、他のノードと組み合わせることで真価を発揮します。特にIFノードとの連携は強力です。
例えば、「特定の条件を満たすアイテムだけを集計したい」という要件があったとします。
ワークフロー例:
- データソースノード: 処理したいアイテム群を生成します。
- IFノード: 「金額が10,000円以上」など、特定の条件を設定します。条件に一致したアイテムは「true」の出力へ、それ以外は「false」の出力へ流れます。
- Aggregateノード: IFノードの「true」出力に接続します。これにより、条件に一致したアイテムだけがAggregateノードに渡され、集計の対象となります。
このパターンを使えば、複雑な条件分岐を含むデータ集計もスマートに実現できます。「データをまず絞り込み、その後でまとめる」という思考プロセスを、n8nのワークフローで直感的に表現できるのが魅力です。
もう一歩先へ!Aggregateノードの応用テクニックと注意点
基本的な使い方をマスターしたら、次はより高度なテクニックに挑戦してみましょう。Aggregateノードが持つポテンシャルを最大限に引き出すための、応用的な機能と注意点について解説します。
「Group By」で特定のキーを基にデータをグループ化する方法
「Aggregate By」の設定を「Field」に切り替えると、指定したフィールドの値をキーとして、アイテムをグループ化できます。これはSQLのGROUP BY句に似た機能で、非常に強力です。
シナリオ:
ECサイトの注文データが複数あり、これを「商品カテゴリ」ごとに集計したいとします。
ワークフローと設定:
- 入力データ: 各アイテムに
categoryフィールド(例: “家電”, “書籍”)とpriceフィールドが含まれているとします。 - Aggregateノードの設定:
- Mode: Merge
- Aggregate By: Field
- Group By Field:
category(カテゴリ名のフィールドを指定)
この設定により、Aggregateノードはcategoryフィールドの値が同じアイテムを自動的に見つけ出し、それらをグループとしてまとめます。出力は、「家電」グループのアイテム配列と「書籍」グループのアイテム配列、というように、カテゴリの数だけアイテムが生成されます。
これにより、「カテゴリごとの売上分析」や「担当者ごとのタスク一覧作成」など、データ分析やレポーティングの自動化が格段にやりやすくなります。
「Summarize」機能で数値データを合計・平均・カウントする
Aggregateノードのもう一つの強力な機能が「Summarize」モードです。これは、グループ化したデータ内の数値フィールドに対して、合計(SUM)、平均(AVG)、件数(COUNT)、最小値(MIN)、最大値(MAX)などの集計計算を行う機能です。
シナリオ:
前述の「商品カテゴリごとのグループ化」に加えて、「カテゴリごとの売上合計と平均単価」を算出したいとします。
Aggregateノードの設定:
- Mode: Summarize
- Aggregate By: Field
- Group By Field:
category - Summarize Fields:
- Field to Summarize:
price(価格フィールドを指定) - Aggregations: SUM, AVG (計算したい集計方法を選択)
- Field to Summarize:
この設定で実行すると、出力される各アイテムには、categoryフィールドに加えて、price_sum(価格の合計)やprice_avg(価格の平均)といった新しいフィールドが自動的に追加されます。これにより、複雑な計算をCodeノードで書くことなく、設定だけで高度なデータ集計が完了します。まさにn8nのローコード思想を体現した機能と言えるでしょう。
よくあるエラーと解決策(独自の視点)
Aggregateノードは便利ですが、いくつか注意点があります。特に初心者が陥りがちなのが、データ構造に起因するエラーです。
- 注意点1: 予期せぬデータ構造の変化
Aggregateノードは、アイテムのデータ構造を大きく変更します。後続のノードでデータを参照する際は、{{ $json["data"][0]["field_name"] }}のように、集約された階層を意識した式を書く必要があります。式がうまく動かない時は、まずAggregateノードの出力結果をじっくり観察し、データがどのような構造になっているか確認する癖をつけましょう。 - 注意点2: 大量データ処理時のパフォーマンス
何万ものアイテムを一度に集約しようとすると、n8nが使用するメモリが増大し、ワークフローが遅くなったり、停止したりする可能性があります。「Aggregate By」で適切な数(例: 1000件ごと)を指定して分割処理を行う、またはより性能の高いサーバーでn8nをホストするなど、処理するデータ量に応じた設計が重要です。私の経験上、一度にすべてのデータを集約するのではなく、複数のAggregateノードを組み合わせて段階的に集計する方が、安定性が増すケースが多くあります。
n8nでの自動化をより深く、広く進めたい方は、n8nの基本から応用までを網羅的に解説したn8n完全ガイド記事も非常に役立ちます。他の強力なノードとの連携方法を知ることで、Aggregateノードの活用の幅もさらに広がるでしょう。
まとめ:Aggregateノードを制してデータ処理を次のレベルへ
この記事では、n8nのAggregateノードについて、基本的な役割から実践的なユースケース、そして応用テクニックまでを詳しく解説しました。最後に要点を振り返りましょう。
- 基本: Aggregateノードは、バラバラの複数アイテムを1つのアイテムに集約する。
- 実践: スプレッドシートの全行データや、APIの複数ページにわたるデータを統合する際に不可欠。
- 応用: 「Group By」で特定のキーに基づいてデータをグループ化し、「Summarize」で合計や平均などの集計計算まで自動化できる。
Aggregateノードを使いこなせるようになると、これまで手動で行っていた面倒なデータ集計作業や、複雑なデータ変換処理から解放されます。これにより、ワークフローの可能性が大きく広がり、より高度で価値のある自動化を実現できるようになるはずです。
データ処理は、業務自動化の心臓部です。ぜひ、今日からあなたのワークフローにAggregateノードを取り入れて、そのパワーを実感してみてください。
「まだn8nを試したことがない」「クラウド版で本格的に運用したい」という方は、以下のリンクからn8nを始めることができます。無料プランからでも多くの機能が利用可能ですので、まずは気軽に触れてみることをお勧めします。
また、n8nの導入方法や初期設定、基本的な使い方についてさらに詳しく知りたい場合は、すべてを網羅したn8n完全ガイド記事が、あなたの自動化への道のりを力強くサポートします。ぜひ合わせてご覧ください。
