How to get the Right join from Right Outer Join

Hi,

 

I  need Only Right Join not the Right Outer Join, which node should I use?

 

Thanks.

What exactly do you mean with "right join"? What's the different to "right outer join"?

Hi Thor,

 

Thanks for the reply, I mean I only need the records from Right Table Excluding the common records.

 

Thanks

So you are looking for something similar to the MINUS operator in SQL? In case you want to filter based on only one column you can use the Reference Row Filter.

Hi thor,

I appreciate your time, Yes the Reference Row Filter works totally fine like you said based on one column. Is there a way if I need to filter based on more than one column?

 

Thank you so much.

You would have to combine all columns into one column.

I'm sorry thor I didn't understand that

In both tables, you will have to concatenate (combine) the various individual identifying columns into a single column, then use the latter to compare with in Reference Row Filter. String Manipulation should get the job done thanks to its join() and string() functions. Not hyper convenient but it will work :-)

Hi Geo, Thanks. Let me try that out.

Unfortunately, the solution suggested by @thor is not the safest: in theory, it can happen that you end up with unintended duplicates when combining multiple columns into one..

I think a safer way would be to use the Joiner on all the required columns (and then a subsequent reference row filter on RowIDs to exclude those from the original table), see also this discussion:

https://tech.knime.org/forum/knime-general/feature-request-reference-row-filter-with-multiple-columns

As I said there as well: it would be handy to have a streamable Multi-column reference row filter at some point :-)

 

I would complement the feature request by implementing anti-join in the Joiner node instead :-)

Hi,

 

@imagejan, awesome. 

 

 

thank you so much