Get startedGet started for free

Combining and Structuring Data

1. Combining and Structuring Data

Nice work so far — you can route data with If and Switch nodes and pull in values dynamically with expressions. But here's something we haven't tackled yet: what happens when the data you need doesn't come from a single source? In real workflows, information is almost always scattered across different tools and systems. The Merge node is how we bring it all together.

2. The problem: split data

Let's set the scene. Acme Events is running a conference. Their registration system has a list of attendee first names, last names, and user IDs. Meanwhile, a completely separate sign-up form collected email addresses from the same people, assigned to their user ID. Both lists are accurate, but neither one tells the full story on its own. Sound familiar? This kind of thing happens all the time.

3. The problem: split data

To send a personalized welcome email, they need both the first name and the email address on the same record. Right now, that data is split across two streams — names here, emails over there. This is incredibly common in real-world workflows, and it's a problem we need a clean way to solve.

4. Enter the Merge node

The Merge node does exactly what you'd expect — it takes two separate inputs and combines them into a single, unified output. It works by matching records on a shared field. If both lists have a "user ID" column, the Merge node lines them up so each record ends up with the data from both sides. Think of it like a zipper — two separate tracks that lock together into one. Let's see this in action!

5. Example: Merging Data

To start, we have two nodes representing the data from the Acme Events conference: one containing user names and IDs from the registration system, and one containing user emails and IDs from the sign-up form. To bring them together, we add and connect a Merge node to the two sources. This needs configuring, so we'll open it up and change a few settings. First, we set the Mode to "Combine" and the Combine By option to "Matching Fields." This tells the node to match rows based on common fields, then adds those fields together. Then we tell it which field to match on — in our case, "userID". That's all it needs. It takes Input 1 and Input 2, walks through every row, and wherever the userID values match, it combines those records into one. The order matters here — make sure the right data source is connected to the right input. After the merge, we get a single table with all the columns on every row. Each record is now complete. If you've ever used a JOIN in SQL or a VLOOKUP in a spreadsheet, this is the same idea. One node, two inputs, one enriched output. And if a user ID appears in one list but not the other, that row simply won't show up in the result — only matching records make it through.

6. Let's practice!

Time to put this into practice!

Create Your Free Account

or

By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.