这个问题来自 Notion 系统课程读者的提问,经整理后分享于此。如果你在使用 Notion 的过程中遇到了类似问题,欢迎留言交流。
问题背景
在 Notion 课程评论区收到了一条提问,非常有趣,问题是「能不能对 Rollup 的结果进行分组(Group)?」这个问题是在实践 PARA 方法论时所产生的,其背景如下:
- Task 数据库关联了 Project 数据库
- Project 数据库关联了 Area 数据库
- Area 数据库中有若干个领域,如领域 A、领域 B、领域 C
- 这些领域被一个 Select 字段分类为工作、学习、生活三个大类

现在的问题是,当修改 Area 中的具体标签,例如为「领域 A」分配了 工作 标签之后,领域所关联的项目,和项目所关联的任务,能否也自动化分配 工作 标签?如果可以的话,就可以实现在三个数据库内,共用同一套分类标准(Group),如下图所示:

答案是可以的,但我们无法直接对 Rollup 的结果进行分组,而是需要将 Rollup 与 Formula 结合在一起使用。
解法步骤
第一步:在 Project 数据库中添加 Formula
在 Project 数据库中添加一个 Formula 字段,然后用 map 函数查询 Project 所关联的 Area 的 Select 字段的值,又因为 map 返回的是数组格式(List),同样无法直接分组,所以需要再加一个 format 函数,将数组转化为纯文本格式:

如此一来,Group 就可以直接对 Formula 输出的纯文本进行分组:

第二步:在 Task 数据库中添加 Rollup 和 Formula
在 Task 数据库中,对 Project 进行 Rollup,查询的是 Project 所关联的 Area:

然后继续添加 Formula 字段,用 map 函数查询 Rollup 字段所查询到的 Area,并用 format 函数将查询到的标签转化为纯文本格式:

现在同样可以对 Formula 进行分组:

第三步:验证自动同步效果
现在,当你修改 Area 中的 Select 值,其关联的 Task 和 Project 也将自动修改和分组:


参考资料
- Rollup 详细解析文章
- Formula 与 map 函数解析
- Formula 入门 01
- Formula 入门 02
- Formula 入门 03
- map 函数解析
📘 FLO.W 思流 — Notion 个人管理系统
FLO.W 是一套基于 Notion 搭建的个人管理模板,整合了任务、笔记、项目、习惯等模块,并配有完整的图文视频教程。

