Joins two tables:
t1 the TOP input table and
t2 the BOTTOM input table
Specify the columns to be returned using the column filters.
Specify the condition, using SQL (H2 Database syntax)
e.g.
t1."name" = t2."name" or t1."name"=t2."alternative_name"
table column names are case-sensitive and will work without including the double-quotes only if the table column names are all upper case.
It is best to always wrap the column names in double-quotes!
If no condition is supplied, it will perform a cross join (resulting in a table that is the product of the rows of both input tables, with every row in t1 joined to every row in t2.
Internally this is an enhacement performance version of the Join Custom Condition component. It tries to build an index within the internal database on each of the columns specified in the condition. For this identification to work, it is important that the t1 and t2 prefixes are present and that the column names are surrounded by double quotes as in the example shown above. If it doesn't manage to identify any indexable columns, it will work without indexing in the same way that the original Join Custom Condition component works.
KNOWN LIMITATIONS
Column names must be compatible with an H2 SQL database. Where the column name contains spaces, this will be handled by converted to underscores for processing in the database. Column names must consist of Alphanumerics and underscores, and must not start with a numeric. Column names containing other characters will most likely fail.
The column names used in the condition must be for columns with datatypes compatible with an H2 database.
When comparing DATES, it is best to convert these to STRING format in YYYYMMDD format, and datetimes to be used for conversion should be converted first to STRING format in YYYYMMDDhhmmss format, for the most reliable results.
v1.1 2023-06-13 @takbb Brian Bates
v1.2 2023-07-17 patches:
- fix to prevent "collision" of underlying tables where more than one joiner component operates on the same workflow. The user can now specify a unique identifier per joiner, which is incorporated into the tables that are created on the H2 database.
- fix to prevent "collision" where joiners are included on multiple workflows that are running concurrently. The temporary H2 database is now allocated a name using the workflow name and (if running on server) the jobid from the context properties.
v1.3 2023-09-01 - fix to allow accented and other characters in column names. It no longer attempts to filter these out when creating h2 database table.
To use this component in KNIME, download it from the below URL and open it in KNIME:
Download ComponentDeploy, schedule, execute, and monitor your KNIME workflows locally, in the cloud or on-premises – with our brand new NodePit Runner.
Try NodePit Runner!Do you have feedback, questions, comments about NodePit, want to support this platform, or want your own nodes or workflows listed here as well? Do you think, the search results could be improved or something is missing? Then please get in touch! Alternatively, you can send us an email to mail@nodepit.com.
Please note that this is only about NodePit. We do not provide general support for KNIME — please use the KNIME forums instead.