JOIN
August 18, 2026 · View on GitHub
Press J to combine the current table with another one through a step-by-step
wizard. The other table can be any file tuitab opens (CSV, TSV, JSON, JSONL,
YAML, TOML, Parquet, Arrow, Excel, Markdown, SQLite, DuckDB) or another sheet you
already have open.

The four steps
1. Pick the right-hand table
A popup lists:
[Browse file…]— type a path (Tabautocompletes) to any supported file.- Open sheets — any other sheets already on your stack.
2. Choose the join type
| Option | SQL equivalent | Rows kept |
|---|---|---|
INNER | INNER JOIN | Only rows with a match in both tables |
LEFT | LEFT JOIN | All left rows; unmatched right cells are null |
RIGHT | RIGHT JOIN | All right rows; unmatched left cells are null |
OUTER | FULL OUTER JOIN | All rows from both tables |
3. Select the left key columns
A checkbox list of the current table's columns. Toggle with Space; the
order you pick them in matters — left key 1 matches right key 1, and so on.
Press Enter to continue.
4. Select the right key columns
The same list for the other table. Columns whose names match your left keys are
pre-selected. Adjust and press Enter to run the join.
The key counts must match: two left keys ⇒ exactly two right keys. A mismatch shows an error in the status bar.
Result
A new sheet is pushed onto the stack titled left JOIN right. Press Esc / q
to pop back to the original table. Non-key columns that exist in both tables get
a _right suffix so nothing is overwritten.
Worked example
# orders.csv: order_id, customer_id, amount
# customers.csv: customer_id, name, country
tuitab orders.csv
- Press
J. - Choose
[Browse file…], typecustomers.csv, pressEnter. - Choose LEFT, press
Enter. - Toggle
customer_idon the left, pressEnter. - Toggle
customer_idon the right, pressEnter.
The result is every order enriched with its customer's name and country.
See also
- Pivot tables to summarise the joined result.
- Keybindings for sheet navigation (
Esc/qto pop back).