Browse topics

The database table

12 min read

Edit entries inline, add rows, add columns, and rearrange — all from the Collection detail page.

Open any Collection from the Collections page and you land on its database table — a Notion-style grid of every entry of that Collection. It's the place to scan your data, fix typos without opening each entry, and add new properties without leaving the page.

The layout

┌────────────┬────────────┬──────────┬──────────┬──┐
│ Aa Name    │ 📅 Date    │ 💪 Reps  │ 💬 Note  │ +│
├────────────┼────────────┼──────────┼──────────┼──┤
│ 💪 Push-ups│ May 21 …   │ 25       │ —        │  │
│ 💪 Push-ups│ May 18 …   │ 12       │ tired    │  │
├────────────┴────────────┴──────────┴──────────┴──┤
│ + New entry                                       │
└───────────────────────────────────────────────────┘
  • Name and Date can't be deleted, but you can hide either one in a view (see below). By default Name comes first, then Date, but you can drag any column — including these two — to put them wherever you like. Whichever column ends up first stays pinned in place when you scroll sideways. Each row's Name shows an emoji in front — the entry's own emoji if you've given it one, otherwise the Collection's emoji. Click that emoji to open the picker and give the row its own icon right from the table (choose Remove to go back to inheriting the Collection's).
  • Hover a row and an Open button appears at the right of the Name cell. One click jumps straight to that entry's full page — the same place the right-click Open takes you, without leaving the table to do it.
  • Property columns sit alongside Name and Date. Drag any column header sideways to reorder — the order is saved per view, so each view of the Collection can lay its columns out differently.
  • The + at the right edge of the header row is where you add new columns. The + New entry button below the rows is where you add new rows.

Editing a cell

Click a cell to edit it — just like Notion, the cursor lands exactly where you clicked in the text (no select-all, no boxy highlight), so you can fix a typo mid-word without retyping. The editor matches the property kind:

  • Name / Text — a box opens on top of the cell, just like Notion: it starts exactly where the text was, is at least a comfortable width, and grows downward as you type, so a long title or note is never cut off. When it reaches the bottom of the screen it scrolls inside. Enter saves and moves to the next row; Shift+Enter adds a new line; Esc or clicking away saves too — nothing you typed is thrown away.
  • Number / URL / Email / Phone — text input. Enter saves + moves to the next row; Tab saves + moves right; Esc saves.
  • Checkbox — single click toggles it. No popover, no extra step.
  • Tags — the tag picker, right in the cell, including creating a new tag on the spot.
  • Date & time — the date picker.
  • Colour — the colour picker.

Some kinds are read-only in the table, because a cell is the wrong shape for them and typing into one would throw the real value away. Tap or right-click the row → Open to edit these on the entry's own page:

  • Page — shows the first line of your writing; the writing itself lives on the entry.
  • Stopwatch / Timer / GPS route — the recorded total. Start and stop them where the controls are.
  • Formula — worked out for you from other values, including sub-entries. Scale values — enter an amount to scale its selected number fields together.
  • Photos, files, and anything a sync brings in (screen time, heart rate, source logs) — shown as a summary.
  • Links to other entries — shown as chips; add and remove them on the entry page.

Edits save automatically as you commit them. The top bar shows Saving… then Saved. If something goes wrong you'll see Save failed and a toast with the error.

On a phone

The table edits on the phone too. Tapping a cell opens the right editor for that property: a checkbox ticks on the tap, tags open the tag picker, a date opens the date sheet, and a number or a piece of text opens a sheet with the property's name and a full-width field — the same editors you get on the entry page, just given room to breathe instead of squeezed into a column. Tap the Name cell (or any read-only cell) to open the entry itself.

Adding a row

Click + New entry below the table. A fresh row appears at the top of the list with the event time set to right now and its Name open, empty, for you to type. Any defaults you've configured on the Collection's properties get applied automatically.

The row appears optimistically — you can start typing before the server has confirmed.

To add a row in a specific place, hover a row and click the + to its left: the new row appears right below it.

Reordering rows

Hover a row and grab the ⋮⋮ handle to its left, then drag. A line shows where the row will land; let go to drop it there (press Esc mid-drag to cancel). The order is saved, and it is the same order your List and Board views use. Clicking the handle without dragging opens the row menu.

The + and ⋮⋮ only appear while the view has no sort of its own — a table sorted by Due date has one true order, so there is nothing to drag. Sub-entries shown in the table keep their place.

Selecting rows and editing many at once

Hover a row and tick the checkbox to its left. Shift-click another row's checkbox to select every row in between, or tick the box in the header to select them all (tick it again to clear). Esc clears the selection.

While rows are selected, a bar appears above the table:

  • N selected — click to clear the selection.
  • One button per column — set that column on every selected row at once: a checkbox column ticks them all (or unticks them if they are all ticked), a tag column opens the tag picker, a text or number column asks for one value, a date column opens the date picker.
  • Delete — moves every selected row to Trash at once, with one Undo.

Deleting a row

Right-click anywhere on a row to open a small menu with Open (opens the entry's detail page) and Delete. Delete moves the entry to Trash, exactly like deleting from the entry page itself.

Adding a column

Click the + in the top-right of the header row. A popover opens with two parts:

  1. Property name (top) — what you want to call this column. Optional; if you leave it blank, the catalog property's own name is used.
  2. Select type — the property catalog grouped by section (Basic / Time / Relationships / Calculations & controls / Special tracking). Click one to add it. Every property type explains each one.

You can pick the same kind multiple times — for instance, two Number properties named "kg" and "reps". Type the name first, then pick Number from the list; the new column shows up with your custom name.

Renaming, resizing, reordering, hiding, deleting columns

Click any column header — Name, Date, a property, or the Summary column — to open its menu. A property column's menu lets you edit the property; type a new name and press Enter (or click outside) to save.

Every column's menu has Wrap text. By default each row is one line tall and long values end in …. Turn on Wrap text for a column and its full content shows, with the row growing to fit — for example, a long workout note or the full list in Summary. Wrap as many columns as you like; the others stay on one line. You can also tick Wrap next to each column in View settings → Properties.

The popover also has a Delete column option. Confirming will:

  • Immediately remove the column from the table.
  • Move the column to Trash (filter "Properties" to find them). From there you can Restore the column — cell values come back intact — or Delete forever, which permanently removes the column and every cell value tied to it.
  • Pop a "Column moved to trash" toast with an Undo button for ~5 seconds. Tap Undo to restore the column without leaving the page.

Deleting a column is fully reversible until you Delete forever from Trash.

Every column's menu also has Hide column — the column disappears from the current view without deleting anything (other views keep showing it). This works for Name and Date too. One column always stays: you can't hide the last one. To bring a column back, click the active view's pill and pick it under Hidden columns, or open View settings → Properties and click its eye; it returns to its old position.

If you hide Name, the Open button you see when you hover a row moves to the first column, so you can still open each entry from the table.

Drag the right edge of any column header sideways to resize it. Press a header and drag it sideways to reorder — this works for every column, including Name and Date. A copy of the header follows your pointer and a line shows where the column will land; let go to drop it there, or press Esc to cancel. The order is remembered per view (resizing a column applies everywhere; only the order is per-view).

On a phone, tap the + in the header row to open Columns: a switch per property to show or hide it in this view, and New property to add one. A width you set on a computer is respected on the phone, and any spare space is shared out so the table always fills the screen. Reordering columns lives in View settings → Column order, since there is no header to drag.

For more advanced per-Property settings — default values, "required" toggle, layout width on the entry page, Timer targets — click More settings → in the column popover. That switches the page to the Properties tab (/collections/[id]?tab=properties).

Find duplicates

Logged the same run twice? Imported a workout you'd already added by hand? Open the ⋯ menu at the top of a Collection and choose Find duplicates. Kaizendex scans that Collection and shows you each likely duplicate pair side by side, with two choices per pair:

  • Merge — keeps the older entry and folds in anything the other one had that it was missing (a note, a distance, a heart rate). It never overwrites a value you already filled in — it only fills blanks. The extra entry then moves to Trash.
  • Keep both — leaves the pair untouched.

Matching is exact and predictable, not a guess: it pairs entries that line up on time, title, and — for workouts — distance and duration. Nothing happens until you pick Merge on a specific pair, and because a merge is a normal edit-and-delete, you can undo it from Trash or the entry's history if you change your mind.

Sub-entry columns: the matrix view

If your Collection has a Sub-entries property — a Workout made of Sets, a Dish made of Ingredients — the table grows extra columns that turn it into a matrix: every entry on its own row, lined up so you can compare them at a glance — so you can read, say, every workout's front-squats side by side to see your progression.

Two kinds of column appear, after your regular property columns:

  • A count column — named after your Sub-entries property ("Sets", "Ingredients"). Each cell shows how many children that entry has; hover it to peek at their names.
  • One column per child Collection — a "Front squat" column, a "Bench press" column, and so on. Each cell summarises that entry's children of that Collection.
 📅 Date     │ Aa Name    ┊ Sets ┊ 🦵 Front squat ┊ 💪 Press
─────────────┼────────────┼──────┼────────────────┼─────────
 Mon 26 May  │ 💪 Workout ┊  4   ┊ 10 × 12        ┊ 33 × 33
             │            ┊      ┊ 10 × 33        ┊ 22 × 22

How a cell summarises its children

Click a child-Collection column header to choose how that column collapses several children into one cell:

  • List (default for number-based children) — each child stacked on its own line (e.g. each set's reps × weight). Past four, the rest fold into a +N more you can hover.
  • Aggregate — one number: sum, average, min, max, last, or count of a field you pick (e.g. total reps, top weight).
  • Count + peek (default for text/tag children) — just how many, with the full list on hover.

The same menu has a Show field names toggle: instead of bare numbers like 20 × 12, each value carries the name you gave its field — 20 reps 12 kg. Rename the fields on the child Collection (e.g. to reps and kg) and the cells follow.

It also has a Hide column option, handy once a Collection accumulates many child Collections (say, one column per exercise). Hidden matrix columns come back the same way as regular ones: the active view's pill menu, under Hidden columns.

Click the count column's header (the one named after your Sub-entries property, like "Sets") for two choices: Hide this column only removes just the count, leaving the exercise columns in place; Hide all sub-entry columns collapses the whole matrix — the count column and every child-Collection column disappear together. Either way, each hidden column is listed under Hidden columns afterwards, so you can bring back just the ones you want. The same menu also offers Edit sub-entry columns JSON — the whole matrix setup (summary modes, hidden columns, widths, compact rows) as one editable document, checked before anything saves, for power users and the AI.

Pinned columns

Child Collections in the Collection's default sub-entries always get a column — even for an entry that skipped that one (the cell shows —), so your planned line-up stays visible. Any other child Collection you log appears as a column automatically.

The Summary column

Turn on Summary (from the view's pill menu, or the + at the end of the header row) for one column that lists each entry's sub-entries — e.g. 🏋️ Front squat 20 reps 16 kg · Arnold press 10 reps 16 kg. It sits on one line like every other cell and ends in … when it runs out of room; hover it to see everything. Turn on Wrap text in its menu to show each sub-entry on its own line instead.

Compact rows

By default each list cell stacks its children on separate lines. Flip the Compact rows toggle above the table to squeeze them onto one line (10×12 / 10×33 / +2) when you're scanning many entries at once.

Sub-entry columns are read-only here — click a child to open its entry; editing happens on the entry card or its detail page.

What's missing in v1

Some Notion features aren't here yet:

  • Timeline view — besides this Table you can add Board, Gallery, Mosaic, Books, Feed, List and Calendar views (see Every view type), but there's no timeline view yet.
  • Multi-cell selection / paste / fill-down — you can select whole rows and set a column on all of them, but not copy or fill a block of cells yet.
  • Page columns are read-only — a Page column shows the first line of what you wrote, so you can scan your notes down the table. To change the text, open the entry (right-click the row → Open) or edit it on the entry's card. You can't write a Page inside a narrow table cell.

These are tracked for follow-ups.

Next

Didn’t find your answer?Email me