侧边栏壁纸
  • 累计撰写 225 篇文章
  • 累计创建 80 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

【Notion教程】Notion Relations & rollups - 数据库链接与统计

班码匠
2023-01-08 / 0 评论 / 0 点赞 / 291 阅读 / 2,519 字

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

数据库关联是什么?

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

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

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

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

示例

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

创建一个关联

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

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

23017ec6c60ed799.gif

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

7a2d30308935a8ad.gif

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

ff8f4b3b11bf18a4.gif

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

ea840c826e4083b0.gif

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

打开一个关联页面

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

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

2f595666cc71f1e0.gif

将数据库关联到它本身

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

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

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

13b7c78b329370b5.gif

关联任务

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

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

b551351c2367f626.gif

以父子任务的形式关联

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

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

d50c7db3425c1677.gif

归纳

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

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

7eb3ac95d2a85d3a.gif

  • 点击归纳列中的任意单元格,会呼出一个新的菜单,让你选择:
    • 你想归纳的关系属性。
    • 你想归纳的关联页面的属性。
    • 你想要应用的计算方式。
  • 因此,在我们的例子中,你要选择想在这些页面中归纳的关系属性 Items PurchasedPrice 属性,然后选择 Sum 作为计算方式。

8de5fdcb878edb5c.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 将列中所有的值加到一起,得到总数。

bc95638170e3d21b.gif

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

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

5082ac75ed7437a6.gif

常见问题:

  • 可以将导出或导入关联吗? 当你把一个关系型的数据库导出为一个 CSV 文件,关系属性会被导出为纯文本 URL。目前来说,你还不能把这个 CSV 文件重新导入进 Notion 并恢复数据库间的关系。
  • 我能复制带有关联的数据库吗? 能,但会发生下面这个让人困惑的现象: 如果你在上例中创建了 Customers 数据库的副本,你会看到一个新的关系属性自动出现在了 Items 数据库中。 这是因为在 Notion 中,关系是双向同步的。当你复制了一个数据库,你也复制了它与其他数据库的关系。你会找到窍门的!

【原文链接】:https://mp.weixin.qq.com/s?__biz=Mzg4MDg0NzAyNw==&mid=2247484219&idx=1&sn=289f5fe8e784b0a4eabe2735bb8589ac&chksm=cf6fb2e7f8183bf1c34643e640c35fbe00002d88fe1c89e2e059eb9f71cca523a63c22c03ece#rd

0

评论区