# Multiple join

**URL:** <https://forum.knime.com/t/multiple-join/62294>\
**Category:** KNIME Analytics Platform\
**Created:** [February 22, 2023, 9:08am UTC](https://forum.knime.com/t/multiple-join/62294 "2023-02-22T09:08:28Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![najihyeon](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/n/bbe5ce/32.png) [@najihyeon](https://forum.knime.com/u/najihyeon)\
**Post date:** [February 22, 2023, 9:08am UTC](https://forum.knime.com/t/multiple-join/62294/1 "2023-02-22T09:08:28Z")

</div>

Hello,

As far as I know, the joiner node can join only two tables in Knime.  
I want to know the different ways to join more than two tables except for SQL related nodes.

Thank you very much!

Best regards,  
JH

---

<div class="post-metadata">

**Author:** ![kowisoft](https://forum-cdn.knime.com/user_avatar/forum.knime.com/kowisoft/32/3295_2.png) [@kowisoft](https://forum.knime.com/u/kowisoft)\
**Post date:** [February 22, 2023, 9:29am UTC](https://forum.knime.com/t/multiple-join/62294/2 "2023-02-22T09:29:19Z")

</div>

Dear @najihyeon ,

Welcome to the forums 😃 👋

maybe I am mistaken but as far as I know you can only join 2 tables together, assuming we’re talking about “join” (different table structures) compared to “concatenate” (similar table structures).

The only other solution I would see is exactly what you mentioned, using DB nodes and their underlying SQL statements or directly SQL.

This also seems to make sense, as the interface of the Joiner in the first tab basically allows 2 fields to match, not less and not more (so to say).

But of course, you can chain more than one join node together.

Hope this helps. If someone else knows more and thinks I’m wrong, please correct me 😉

Best  
Phil

---

<div class="post-metadata">

**Author:** ![aworker](https://forum-cdn.knime.com/user_avatar/forum.knime.com/aworker/32/36421_2.png) [@aworker](https://forum.knime.com/u/aworker)\
**Post date:** [February 22, 2023, 9:54am UTC](https://forum.knime.com/t/multiple-join/62294/3 "2023-02-22T09:54:12Z")

</div>

Hi @najihyeon & welcome to the KNIME forum,

A possible solution to do multiple joining is to wrap the -joiner- node using a recursive loop if the rules for joining are always the same:

> **[Recursive Loop Start](https://hub.knime.com/knime/extensions/org.knime.features.base/latest/org.knime.base.node.meta.looper.recursive.RecursiveLoopStartDynamicNodeFactory)**
>
> The Recursive Loop node pair enables the passing of data tables from the Recursive Loop End back to the Recursive Loop Start. The Recursive Loop Start requires…

> **[Recursive Loop End](https://hub.knime.com/knime/extensions/org.knime.features.base/latest/org.knime.base.node.meta.looper.recursive.RecursiveLoopEndDynamicNodeFactory)**
>
> The Recursive Loop node pair enables the passing of data tables from the Recursive Loop End back to the Recursive Loop Start. The Recursive Loop Start requires…

Doing this way, it makes the -joiner- node an universal multi joiner.

May be you could tell us a bit more about your data and how you need to join it?

Hope it helps.

Best  
Ael

---

<div class="post-metadata">

**Author:** ![Daniel\_Weikert](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/d/e47c2d/32.png) [@Daniel\_Weikert](https://forum.knime.com/u/Daniel_Weikert)\
**Post date:** [February 22, 2023, 6:07pm UTC](https://forum.knime.com/t/multiple-join/62294/4 "2023-02-22T18:07:37Z")

</div>

Another alternative is the scripting node (e.g. python)  
br

---

<div class="post-metadata">

**Author:** ![system](https://forum-cdn.knime.com/uploads/default/original/1X/ab3ccf34482a0329361734a18199390177204f15.png) [@system](https://forum.knime.com/u/system)\
**Post date:** [May 23, 2023, 6:07pm UTC](https://forum.knime.com/t/multiple-join/62294/5 "2023-05-23T18:07:56Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
