你是否曾经想要把两个表格的数据关联起来?真幸运!Notion 的关联属性就是专为帮你表达不同 Database(数据库)条目之间的关系而设计的。

数据库关联是什么?

假设你有两个数据库,用来管理假想的生意。

  • 一个用来记录顾客
  • 一个用来记录售出的商品

你想知道哪些顾客买了哪些商品,还想知道哪些商品是被哪些顾客买走了。这正是关联的应用场景!

  • 在下面的两个表格中,用 ↗ Items↗ Customers 标记的就是 Relation (关联)属性,添加它们就像添加其他数据库属性那样简单。
  • 现在,当你向 Customers 数据库中添加售出的商品时,购买这些商品的买家会自动出现在 Items 数据库中的 ↗ Customers 列中。

示例

  • 饭店数据库社区数据库关联起来,这样你就可以一眼看到哪个餐馆在哪个社区。
  • 会议记录数据库客户数据库关联起来,以便快速访问与每个顾客相关的记录。
  • 任务数据库大型项目数据库关联起来,以了解如何将项目分解为任务,以及任务如何促进项目。
  • 候选人数据库面试官数据库关联起来,以跟踪谁面试了谁。

创建一个关联

要想关联两个数据库,你首先需要两个数据库。因此,让我们假设你已经为本次演练建立了上面的 CustomersItems 数据库。

  • Customers 数据库中新建一个列/属性。
  • 在弹框中给新属性命名,如 Items Purchased
  • Property Type(属性类型) 菜单中选择 Relation(关联)

1.gif

  • 点击下拉菜单,搜索你想要关联的数据库。
  • 点击 Create Relation(创建关联) 按钮。
  • 在另外那个数据库中,你会看到新的一列跳了出来,代表两者之间双向关联的关系。现在,你在其中一个关系列中增加的任意内容,都会影响另一个关系列。

    • 点击此列可以重新命名。

2.gif

  • 现在,当你点击其中一个关系列中的单元格,会呼出一个菜单,你可以在菜单中搜索并添加来自另一个数据库的条目。

    • 例如,你可以这样添加每个顾客购买的衣服。
    • Items 数据库的关系列中,你会看到顾客的名字跳了出来,代表这些顾客就是对应的买家。
    • 若想一次添加多个条目,可以点击蓝色的 +。若想删除一个条目,可以点击红色的 X

3.gif

  • 这些编辑操作是双向的。因此,如果你在 Items 数据库中的关系列添加了一个顾客,相应的更改会立刻显示在 Customers 数据库中。

4.gif

小技巧:若要更改要连接的数据库,可以点击关系属性,重新选择 Relation(关联) 属性类型。弹窗会提示你选择一个新的数据库。

打开一个关联页面

当你创建了一个关系,本质上是将存储在一个数据库中的 Notion 页面添加到另一个数据库的属性字段中了。这些页面同样可以被打开、被编辑:

  • 点击关系列中的页面。然后在弹出的窗口中再次点击该页面。
  • 你还可以通过点击红色的 X 来移除页面。

5.gif

将数据库关联到它本身

假设你想要在同一个数据库中的条目之间建立关联。例如,你有一个任务数据库,你想让每个任务和其他任务关联。有两种实现方式:

  • 用Relation (关联)关联
  • 以父子任务的形式关联

不管那么多,我们先创建一个新的关系。然后搜索并选择你当前操作的数据库。

6.gif

关联任务

如果你想要将任务简单关联 —— 也就是你想要同时处理任务,或者它们大概属于同一类工作 —— 你可以建立仅单向同步的关系。

  • 假设你要同时买一个鱼缸和一个过滤器。
  • 在把数据库关系自身后,选择 Use the same property(使用相同属性)。这样,这个关系就是单向同步的了。

7.gif

以父子任务的形式关联

如果你想要使数据库中的一些任务从属于其他任务,你可以创建一个双向同步的关系。对于任何给定的任务,你可以看到它所包含的子任务,或者它是谁的子任务。

  • 假设你正在写一份产品文档(父任务),需要做一些用户调查并创建一个实体模型(子任务)。
  • 在把数据库关系自身后,选择 Create a new property(添加新属性)。这样就建立了两个新列,以双向的方式同步。

8.gif

归纳

归纳能够基于关联,帮你把数据库中的数据聚合起来。回到 Customers 和 Items 的例子,假设你想要知道每个顾客在他们所买的商品上花了多少钱。

  • 首先,创建一个关联,这样你就能知道谁买了什么。
  • 添加一个新列/属性,并在 Property Type(属性类型) 菜单中选择 Rollup(归纳),并命名。
  • 点击归纳列中的任意单元格,会呼出一个新的菜单,让你选择:

    • 你想归纳的关系属性。
    • 你想归纳的关联页面的属性。
    • 你想要应用的计算方式。
  • 因此,在我们的例子中,你要选择想在这些页面中归纳的关系属性 Items PurchasedPrice 属性,然后选择 Sum 作为计算方式。

10.gif

归纳类型

一个归纳属性有 16 种不同的的计算方式。如下:

  • Show Original:在同一个单元格中显示所有的关联页面。等效于关系属性本身。
  • Count All:对所有关联页面中选定属性值计算总个数。
  • Count Unique Values:对所有关联页面中选定属性的值计算特殊值的个数。
  • Count Empty:计算选定的属性的值为空值的关联页面的个数。因此,如果一个顾客购买的一个商品没有价格,而这个属性被选定了,那么归纳列会显示 1.
  • Count Not Empty:计算选定属性的值为指定值的关联页面的个数。
  • Percent Empty:显示选定属性的值为空值的关联页面的百分比。
  • Percent Not Empty:显示选定属性的值不为空的关联页面的百分比。

这些归纳计算只支持 Number 属性:

  • Sum:计算关联页面的数字属性的和(如上例)。
  • Average:计算关联页面的数字属性的平均值。
  • Median:计算关联页面的数字属性的中位数。
  • Min:计算关联页面的数字属性的最小值。
  • Max:计算关联页面的数字属性的最大值。
  • Range:计算关联页面的数字属性的极值之间的范围(Max - Min)。

这些归纳计算只支持 Date 属性:

  • Earliest Date:计算关联页面的日期属性中的最早日期/时间。
  • Latest Date:计算所有关联页面的日期属性的最晚日期/时间。
  • Date Range:计算关联页面的日期属性的起止范围。

聚合归纳

在表格和看板中,你都可以对归纳列应用计算,以得到整个数据库中的和、范围、均值等概念。

  • 假设你想要在上文的例子中计算所有顾客的消费总额。
  • 在 Customers 表格的底部,归纳列的下面,点击 Calculate
  • 选择 Sum 将列中所有的值加到一起,得到总数。

11.gif

在看板中,你可以像在表格中那样,通过添加一个 Relation 新属性来创建关系。

  • 如下,我们已经创建了关系属性(你可以在页面卡片上看到每个顾客购买的商品)和计算每个顾客的总价格的归纳属性。
  • 你可以这样计算所有顾客的消费总和:

12.gif

常见问题:

  • 可以将导出或导入关联吗?

当你把一个关系型的数据库导出为一个 CSV 文件,关系属性会被导出为纯文本 URL。目前来说,你还不能把这个 CSV 文件重新导入进 Notion 并恢复数据库间的关系。

  • 我能复制带有关联的数据库吗?

能,但会发生下面这个让人困惑的现象:

如果你在上例中创建了 Customers 数据库的副本,你会看到一个新的关系属性自动出现在了 Items 数据库中。

这是因为在 Notion 中,关系是双向同步的。当你复制了一个数据库,你也复制了它与其他数据库的关系。你会找到窍门的!

标签: Notion, Notion教程, Notion使用教程, Notion入门教程, Notion高级教程, Notion核心教程, Notion怎么用, Notion使用, Notion配置, Notion技巧, Notion下载, Notion数据库, Notion页面, Notion工作空间, Notion权限, Notion共享, Notion安全