Joins¶
You can create a bundle built up of data in different files joined together, even files of different types.
When joining, you must specify a unique name for the join and an on expression defining how the data relates. Use bundle. to reference columns from the bundle's existing data in the join expression.
You can optionally specify a location for the initial data and a how for the join type ("inner", "left", "right", or "full").
Basic Usage¶
Joining With Another Bundle¶
You can join with the query output of another committed bundle using a bundle:// URL. This reads the target bundle's full query output — including any filters, column operations, and joins that have been applied.
For filesystem bundles, use bundle:// followed by the path:
For remote bundles (S3, etc.), use the compound scheme bundle+<scheme>://:
Note
The target bundle must be committed. The joined data reflects the target's full query output at read time — including any filters, column operations, and joins that have been applied.
Join Without Initial Data¶
Create a join point without initial data. Data can be attached later using attach() with the pack parameter or via sources.
Join Types¶
Drop Join¶
Remove an existing join from the bundle.
Rename Join¶
Rename an existing join.
Note
Until you commit, join changes will not be used when the bundle is reopened.