Skip to main content
2026 效率升级,模板限时立减 30 元
优惠码:FLOW3DAYS
仅剩 0 天 15:06:51

Notion 数据库如何只显示最近一条更新

通过 Relation 关联 + Formula 函数,让 Notion 数据库只显示最后一条更新记录,适用于项目状态追踪、客户管理等场景。

这个问题来自 Notion 系统课程读者的提问,经整理后分享于此。如果你在使用 Notion 的过程中遇到了类似问题,欢迎留言交流。

问题背景

Notion 的数据库虽然有加载页数限制,但最少也需要显示 10 条,因此无法直接实现「只显示最后一条」的需求:

因此我们需要借助另一个数据库,以及一些函数公式的帮助。

基本思路如下:

  1. 将数据库 01 中的页面 A1、A2、A3、A4 等页面全部关联到数据库 02 中的页面 B(命名为「最后更新条目」)
  2. 在数据库 02 中创建一个 Formula 字段
  3. 在 Formula 字段中,用函数找出最后一个更新过的页面

第一步:创建默认模板

因为数据库 01 中的所有页面都需要关联到数据库 02 中的「最后更新条目」页面上,所以我们可以用默认模板,让这些页面在创建的时候就自动关联:

两个数据库的关联效果如下图所示:

第二步:使用 Formula 字段进行处理

在数据库 02 中创建一个 Formula 字段,并使用以下函数进行处理:

Database 01.map(current.上次编辑时间).sort().reverse().slice(0,1).map(lets( lastTime,current, lastPage,Database 01.find(current.上次编辑时间==lastTime),lastPage ))

函数具体解析如下:

  1. prop("Database 01") — 获取名为 "Database 01" 的数据库中的所有页面,返回一个包含所有页面的列表。
  2. .map(current.prop("上次编辑时间")) — 遍历列表中的每个元素,从每个页面中提取「上次编辑时间」属性,结果是一个包含所有编辑时间的新列表。
  3. .sort() — 将时间列表按照从早到晚的顺序排序。
  4. .reverse() — 反转列表的顺序,使其变成从最新到最旧的顺序。
  5. .slice(0,1) — 只保留列表的第一个元素,也就是最新的编辑时间。
  6. .map(lets(…)) — 再次使用 map 函数,结合 lets 函数定义和使用临时变量:
    • lastTime, current:将最新的编辑时间赋值给 lastTime 变量。
    • lastPage, prop("Database 01").find(current.prop("上次编辑时间")==lastTime):在 "Database 01" 中查找上次编辑时间与 lastTime 相匹配的页面,赋值给 lastPage 变量。
    • lastPage:最后返回这个最新编辑的页面。

最终效果

函数效果如下,当你修改某个页面后,数据库 02 会自动显示最近被编辑过的那个页面:

这个方案还有一个变体应用:在记账场景中自动更新账户余额,同样是利用 Relation 限制来实现「只显示最新数据」的效果。

如果切换到画廊模式,可以将它嵌入到分栏排版中,获得更美观的样式:


📘 FLO.W 思流 — Notion 个人管理系统

FLO.W 是一套基于 Notion 搭建的个人管理模板,整合了任务、笔记、项目、习惯等模块,并配有完整的图文视频教程。

开箱即用的 Notion 模板系统
配套图文视频教程,新手友好
持续更新,长期维护
了解 FLO.W 思流模板✨ 已有 1531+ 位用户选择 FLO.W
分享本文
二一

Notion 深度用户,专注于知识管理和效率工具的研究与实践

邮件列表

加入我们的社区

订阅邮件列表,及时获取最新消息和更新