n8nのMergeノードの使い方|AppendとCombineを初心者向けに解説

n8nでワークフローを作っていると、

「2つの処理結果を1つにまとめたい」

「Google SheetsのデータとAIの結果を合わせたい」

「別々に動かした処理を、あとで合流させたい」

という場面が出てきます。

そこで使うのが「Mergeノード」です。

Mergeノードは、複数のデータの流れを1つにまとめるためのノードです。n8n公式ドキュメントでも、複数のデータストリームをまとめるためのノードとして説明されています。:chatgpt-content-reference{index=”0″}

この記事では、n8nのMergeノードとは何か、AppendとCombineの違い、Matching FieldsやPositionの使い方、初心者がつまずきやすいポイントまでやさしく解説します。

n8nのMergeノードとは?

Mergeノードは、別々のルートから流れてきたデータをまとめるためのノードです。

たとえば、

Google Sheetsから記事データを取得

という流れと、

OpenAIでタイトルを生成

という流れがあったとします。

それぞれのデータをあとで1つにまとめたい場合にMergeノードを使えます。

イメージは、

データA
↓
Merge
↑
データB

2つの川が合流して、1つの川になるようなイメージです。

なぜMergeノードが必要なの?

n8nでは、基本的にノードからノードへ順番にデータが流れます。

しかし実際の自動化では、処理を2つ以上に分けることがあります。

たとえば、

元の記事データ

↓

AIでタイトル生成

という処理と、

元の記事データ

↓

AIでカテゴリ判定

という処理を別々に行ったとします。

最後に、

タイトル

カテゴリ

元の記事情報

を一緒に使いたい場合があります。

そんなときにMergeノードを使って、分かれていたデータをまとめられます。

Mergeノードの基本イメージ

たとえばInput 1に、

{
  "title": "n8nの使い方"
}

Input 2に、

{
  "category": "n8n"
}

というデータが入ってきたとします。

Mergeノードで適切にまとめると、

{
  "title": "n8nの使い方",
  "category": "n8n"
}

のように、1つのデータとして扱える場合があります。

ただし、Mergeノードには複数のモードがあります。

どのようにまとめたいかによって設定を変える必要があります。

Mergeノードの主なモード

現在のn8nのMergeノードには、代表的に、

  • Append
  • Combine
  • SQL Query
  • Choose Branch

などのモードがあります。:chatgpt-content-reference{index=”1″}

初心者なら、まず、

Append

Combine

の2つを理解すると使いやすいです。

Appendとは?

Appendは、複数の入力データを順番につなげて出力する方法です。

たとえばInput 1に、

記事A

記事B

があり、

Input 2に、

記事C

記事D

がある場合、

Merge
↓
記事A
記事B
記事C
記事D

というように出力されます。

n8n公式ドキュメントでも、Appendは各Inputのアイテムを順番に出力するモードとして説明されています。:chatgpt-content-reference{index=”2″}

つまり、

「データの中身を1つに合体させる」

というより、

「複数のデータ一覧を1つの流れにまとめる」

使い方です。

Combineとは?

Combineは、複数の入力にあるデータを組み合わせるためのモードです。

たとえば、

Input 1

名前:ルナ

カテゴリ:n8n

Input 2

タイトル:n8nの使い方

というデータを組み合わせて、

名前:ルナ

カテゴリ:n8n

タイトル:n8nの使い方

のようなデータにできます。

Combineの中でも、さらに、

  • Matching Fields
  • Position
  • All Possible Combinations

などの方法があります。:chatgpt-content-reference{index=”3″}

Matching Fieldsとは?

Matching Fieldsは、

「同じ値を持っているデータ同士をまとめる」

方法です。

たとえばInput 1に、

管理ID:101

タイトル:n8n入門

Input 2に、

管理ID:101

カテゴリ:n8n

というデータがあるとします。

管理IDをMatching Fieldsとして指定すると、

管理ID:101

タイトル:n8n入門

カテゴリ:n8n

という形でまとめられます。

つまり、

「共通する目印を使ってデータを結びつける」

方法です。

ExcelやGoogle Sheetsでいう、IDを使った照合に近い考え方です。

Matching Fieldsは実務で使いやすい

Matching Fieldsは、データ数が増えてきたときに便利です。

たとえば、

Google Sheets

管理ID:001

テーマ:n8n

と、

AI処理結果

管理ID:001

タイトル:n8n初心者向け解説

があった場合です。

管理IDで一致させれば、

同じ記事のデータとしてまとめられます。

記事管理や顧客管理では、

  • 管理ID
  • メールアドレス
  • 商品ID
  • 注文番号

などを使って一致させることがあります。

Positionとは?

Positionは、データの並んでいる順番で組み合わせる方法です。

たとえば、

Input 1

1番目:記事A

2番目:記事B

Input 2

1番目:タイトルA

2番目:タイトルB

なら、

記事A + タイトルA

記事B + タイトルB

というように結合されます。

n8nでは、Input 1の0番目とInput 2の0番目、次に1番目同士というように順番で結合します。:chatgpt-content-reference{index=”4″}

Positionを使うときの注意点

Positionは簡単ですが、順番がズレると別のデータ同士がくっつく可能性があります。

たとえば、

Input 1

記事A

記事B

記事C

Input 2

タイトルA

タイトルC

のように数や順番がズレていると、期待した結果にならないことがあります。

そのため、

「同じ順番になることが確実」

な場合に使う方が安全です。

IDなどがある場合は、Matching Fieldsを使う方がわかりやすいこともあります。

All Possible Combinationsとは?

All Possible Combinationsは、すべての組み合わせを作る方法です。

たとえばInput 1に、

A

B

Input 2に、

1

2

がある場合、

A+1

A+2

B+1

B+2

のように、すべての組み合わせを作ります。

n8n公式ドキュメントでも、両方のInputの全組み合わせを出力するモードとして説明されています。:chatgpt-content-reference{index=”5″}

普段のブログ自動化では出番は少ないですが、商品と条件の組み合わせなどを作りたい場合に使えます。

Mergeノードは入力が揃うまで待つ

Mergeノードの特徴として、

必要な入力データが揃ってから処理する

という点があります。

たとえば、

ルートA

↓

OpenAI処理

ルートB

↓

Google Sheets処理

の両方をMergeへ接続した場合、Mergeは接続された入力の処理を待ってからデータをまとめます。:chatgpt-content-reference{index=”6″}

これによって、別々に動いていた処理を合流させやすくなります。

実例:Google SheetsとAI結果をまとめる

たとえばブログ記事の自動化を考えます。

Google Sheetsから、

  • テーマ
  • カテゴリ
  • 完成本文
  • 管理ID

を取得します。

その一部をOpenAIへ送り、

タイトル

を生成します。

そのあと、

元のGoogle Sheetsデータ

+

AIが作ったタイトル

をまとめたい場合があります。

イメージは、

Google Sheets
↓
分岐
↓      ↓
元データ   OpenAI
↓      ↓
   Merge
    ↓
 WordPress

です。

Mergeでまとめたあと、WordPressへデータを渡せます。

実例:2種類のAI処理をまとめる

AI処理を分ける場合にも使えます。

たとえば、

記事本文

↓

分岐

1つ目

↓

タイトル生成

2つ目

↓

メタディスクリプション生成

最後にMergeでまとめます。

すると、

タイトル

メタディスクリプション

を次の処理で一緒に使いやすくなります。

複数のAI処理を並列で行うワークフローでは、Mergeノードが便利です。

実例:商品データと在庫データをまとめる

Mergeはブログ以外の業務自動化でも使えます。

たとえば、

商品データ

商品ID:001

商品名:バッグ

と、

在庫データ

商品ID:001

在庫数:5

がある場合です。

商品IDをMatching Fieldsに指定すると、

商品ID:001

商品名:バッグ

在庫数:5

というようにまとめられます。

このあと、

在庫が少なければ通知

というIFノードへつなぐこともできます。

MergeとIFは役割が違う

IFノードとMergeノードは、名前だけ見ると少し混乱することがあります。

役割は違います。

IF

=条件によって流れを分ける

Merge

=分かれたデータや複数データをまとめる

という違いです。

たとえば、

データ

↓

IF

↓   ↓

A処理  B処理

というように分岐したあと、設計によっては別の処理結果をMergeで扱うことがあります。

ただし、IFで分岐した片方しか実行されないケースもあるため、Mergeに必ず両方のデータが届くとは限りません。

ワークフロー全体の流れを確認しながら使うことが大切です。

同じ項目名がある場合は注意

2つの入力に同じ項目名がある場合があります。

たとえば、

Input 1

title:元タイトル

Input 2

title:AIタイトル

という状態です。

この場合、どちらの値を残すかを考える必要があります。

n8nのMergeノードには、フィールド名が重なった場合の扱いを設定するClash Handlingがあります。

標準では、同じフィールド名がぶつかった場合にInput 2側が優先されるケースがあります。:chatgpt-content-reference{index=”7″}

重要なデータなら、

original_title

ai_title

のように最初から名前を分けておくと管理しやすくなります。

データ数が違う場合にも注意

Input 1とInput 2でデータ数が違う場合、設定によっては一部のデータが出力されないことがあります。

特にPositionで結合する場合は注意が必要です。

たとえば、

Input 1

3件

Input 2

2件

なら、3件目に対応するデータがありません。

必要に応じて、未対応のアイテムも保持する設定を使えます。:chatgpt-content-reference{index=”8″}

Mergeが必要ない場合もある

n8nでは、何でもMergeすればいいわけではありません。

たとえば前のノードのデータをExpressionで直接取得できる場合があります。

例として、

{{ $('自動入稿記事取得').first().json['完成本文'] }}

のように別ノードの値を直接参照できます。

そのため、

「別ノードの値を1個使いたい」

だけなら、Mergeを使わなくてもExpressionで済む場合があります。

Mergeが向いているのは、

  • 複数のデータセットを1つの流れとして扱いたい
  • 複数件のデータを照合したい
  • 分かれた処理結果をまとめたい

といった場面です。

初心者はAppendとCombineから覚える

Mergeノードには複数の設定がありますが、最初から全部覚える必要はありません。

まずは、

Append

=データを順番につなげる

Combine

=データ同士を組み合わせる

と覚えましょう。

さらにCombineでは、

Matching Fields

=同じIDなどで結合

Position

=同じ順番で結合

という違いを理解すると、多くの場面に対応できます。

Mergeノードでよくある失敗

Input 1とInput 2を逆にしている

Mergeでは、どちらの入力にデータを入れたかが重要になる設定があります。

結果がおかしい場合は、Input 1とInput 2を確認しましょう。

項目名が一致していない

Matching Fieldsを使う場合、

管理ID

と、

ID

では別の項目です。

どのフィールドを一致させるのか正しく指定する必要があります。

データの型が違う

たとえば、

Input 1

管理ID:123

Input 2

管理ID:”123″

のように、数字と文字列で違う場合があります。

MergeのCombineには型の違いを許容するFuzzy Compareという設定もありますが、まずは元データの形式を揃える方がわかりやすいです。:chatgpt-content-reference{index=”9″}

OUTPUTを必ず確認する

Mergeノードを使ったら、実行後のOUTPUTを確認しましょう。

見るポイントは、

  • 必要な項目が入っているか
  • データ数が合っているか
  • 別の記事同士が結合されていないか
  • 項目が上書きされていないか

です。

Mergeは正常に実行されても、

「エラーは出ていないけれど、中身が違う」

ということがあります。

そのためOUTPUT確認が重要です。

AI自動化でもMergeは役立つ

AIを使った自動化では、1つのデータに対して複数のAI処理を行うことがあります。

たとえば、

  • タイトル生成
  • カテゴリ判定
  • 要約生成
  • SNS投稿文生成

です。

処理を分けて実行し、必要な結果をまとめる設計ではMergeノードが役立ちます。

自動化が大きくなるほど、

どこで分けるか

どこでまとめるか

を考える場面が増えてきます。

自動化代行でも使える

業務自動化では、複数のサービスからデータを取得することがあります。

たとえば、

  • 顧客管理システム + 売上データ
  • 問い合わせデータ + 担当者一覧
  • 商品情報 + 在庫情報

などです。

共通するIDを使ってMergeすれば、その後のAI処理や通知につなげやすくなります。

そのためMergeノードは、単純な自動化から一歩進んだワークフローを作るときに役立ちます。

まとめ

n8nのMergeノードは、複数のデータの流れを1つにまとめるためのノードです。

まず覚えたいのは、

Append

=データを順番に並べる

Combine

=データ同士を組み合わせる

という違いです。

Combineではさらに、

Matching Fields

=共通するIDなどで結合する

Position

=順番で結合する

という方法があります。

たとえば、

Google Sheetsの元データ

+

OpenAIで作ったデータ

をまとめてWordPressへ送るような使い方ができます。

n8nのワークフローが複雑になると、

処理を分ける

別々にデータを作る

最後にまとめる

という流れが増えてきます。

Mergeノードを理解すると、複数の処理やデータを整理しながら、より実用的な自動化を作れるようになります。

次に読む記事