目錄
本文資訊以 2026 年 6 月為準,功能可能隨版本更新而變動。
原本把 Notion 當作單純的筆記本來記錄事情,確實很直覺,不過用久了就會發現,每天花一堆時間在表格裡手動填寫資料、自己點算數量、反覆貼上更新狀態,其實有點沒效率。真正能讓工作流程變輕鬆的,通常是開始動手設定資料庫那一刻。特別是搞懂了 Relations 關聯、Rollups 彙總跟 Formulas 公式這三個進階功能之後,原本死板板的靜態表格就會直接變成一個會自己計算、自動串接資訊的自動化知識管理系統,省下大半複製貼上的時間。接下來這篇就來聊聊怎麼用這三個功能,把原本零碎的資料庫串起來。
靜態表格到動態系統:為什麼需要 Relations、Rollups 與 Formulas?
基本 Notion 資料庫只是靜態表格,需要手動更新每個欄位。三大進階功能讓資料庫「活」起來:
- Relations(關聯):讓兩個資料庫互相連結,建立一對多的關係。任務屬於哪個專案、文章屬於哪個分類,全部自動連結。
- Rollups(彙總):從關聯資料庫中自動計算數值(加總、計數、平均等),不需手動統計任何數字。
- Formulas(公式):根據現有屬性動態計算,產生衍生欄位,如完成率、剩餘天數、狀態顯示等。
三者搭配使用,可以打造出一個完全自動化更新的系統。
Notion Relations 教學:打破資料孤島,讓兩個資料庫互相連結
什麼是 Relation?
Relation 是一種資料庫屬性,讓資料庫中的頁面能夠連結到另一個資料庫的頁面,建立資料之間的關聯。
實際應用場景:
- 「任務」資料庫中的每個任務,連結到「專案」資料庫中的特定專案
- 「文章」資料庫中的每篇文章,連結到「分類」資料庫中的分類標籤
- 「費用記錄」中的每筆費用,連結到「客戶」資料庫的客戶名稱
如何建立 Relation:
- 在資料庫中新增屬性(Add Property)
- 選擇屬性類型為「Relation」
- 選擇要連結的目標資料庫
- 選擇是否建立「雙向連結」(Bidirectional)
雙向連結的應用:
開啟雙向連結後,兩個資料庫可以互相看到連結關係。例如在「專案」資料庫的每個頁面,可以直接看到哪些任務屬於這個專案——不需要跑去任務資料庫一筆一筆查。
建立 Relation 的時候,系統會要求你替「另一邊」的資料庫命名這個反向連結屬性。建議取個清楚的名稱,例如「所屬任務」,方便日後辨識。
Notion Rollups 彙總功能:無需手動統計的自動數字計算術
什麼是 Rollup?
Rollup 建立在 Relation 之上,從已關聯的資料庫中提取並計算特定欄位的數值。必須先有 Relation 才能建立 Rollup。
Rollup 能做哪些計算:
- Count All:計算關聯項目的總筆數(含空值)
- Count Values:計算非空值的筆數
- Sum:加總數字欄位
- Average:計算平均值
- Min / Max:取最小或最大值
- Date Range:計算日期範圍(最早到最晚)
- Show Original:顯示關聯頁面的特定屬性值,不做計算
實際範例:專案進度追蹤
在「專案」資料庫建立 Rollup,計算每個專案下「已完成任務數」:
- 新增 Rollup 屬性,名稱設為「已完成任務數」
- Relation 選擇「任務」(已建立的 Relation 屬性)
- Property 選擇「狀態」(任務資料庫中的狀態欄位)
- Calculate 選擇「Count Values」,並加上篩選條件:狀態 = 已完成
效果:每個專案頁面自動顯示已完成任務數,更新任務狀態就會立即反映,完全不需要手動統計。
同樣的方式,再建立一個「總任務數」Rollup:
Count All(不加篩選條件),就能得到每個專案下的總任務筆數。
Notion Formulas 2.0 實戰:用公式建立自動化動態衍生欄位
Notion Formulas 2.0(2023 年大幅升級)支援複雜的邏輯判斷、日期計算和文字處理,語法接近程式語言但不需要程式基礎。
五個最常用的 Notion 公式場景:
dateBetween(prop("截止日"), now(), "days")
結果:顯示距離截止日的剩餘天數,負數代表已過期。可以一眼看出哪些任務快到期。
if(prop("狀態") == "已完成", "✅", if(prop("狀態") == "進行中", "🔄", "⏳"))
結果:根據狀態屬性自動顯示對應 emoji,視覺化一目瞭然,不需要手動加圖示。
prop("年份") + "-" + prop("月份") + "-" + prop("序號")
結果:自動產生類似「2026-06-001」格式的組合 ID,適合需要唯一識別碼的情境。
toNumber(prop("已完成任務數")) / toNumber(prop("總任務數")) * 100
結果:計算任務完成率(%),搭配前面設定的兩個 Rollup 使用。專案進度一目瞭然。
and(prop("截止日") < now(), prop("狀態") != "已完成")
結果:回傳 true/false,可用於篩選逾期且未完成的項目,或作為 Gallery view 的顏色標記條件。
Notion 自動化實戰範例:打造一鍵追蹤進度的專案管理系統
資料庫設定:
任務資料庫屬性:
- 任務名稱(Title)
- 專案(Relation → 專案資料庫)
- 狀態(Select:待處理 / 進行中 / 已完成)
- 截止日期(Date)
- 剩餘天數(Formula:dateBetween)
專案資料庫屬性:
- 專案名稱(Title)
- 任務(Relation → 任務資料庫,雙向連結)
- 總任務數(Rollup:Count All)
- 已完成任務數(Rollup:Count Values,篩選狀態=已完成)
- 完成率(Formula:已完成÷總任務數×100)
- 狀態 emoji(Formula:if 判斷完成率)
效果:
每新增一個任務並連結到對應專案,「總任務數」自動加 1;任務標記為「已完成」,「已完成任務數」自動加 1;「完成率」公式自動計算更新進度百分比。整個系統無需手動更新任何彙總數據,所有計算都是動態的。
要把原本一個個獨立的表格串聯起來,剛開始在設定雙向連結跟拉公式的時候,確實需要花一點時間理清邏輯。不過只要把這套自動化專案管理系統架設好,後續在新增任務、勾選完成的時候,主頁面的進度條跟數據就會自己跟著連動,再也不用切換好幾個分頁去手動點算。如果平常的工作流程裡也有大量需要重複記錄、追蹤的專案,不妨現在就打開常用的工作區,把關聯跟公式套進去試試看,會發現數位工具帶來的流暢感真的很不一樣。
常見 FAQ
Q:Notion Relations 可以連結同一個資料庫的頁面嗎?
可以。建立 Relation 時選擇同一個資料庫,即可建立自我關聯(Self-referential relation),適合「父任務→子任務」或「主題→相關主題」類型的結構。
Q:Rollup 可以計算巢狀 Relation 嗎?
不支援。Rollup 只能計算直接關聯的資料庫,無法跨多層計算。若需要多層彙總,需在中間資料庫先建立額外的 Rollup,再從上層引用。
Q:Notion 公式支援 IF/ELSE 嗎?
支援,使用 if(condition, true_value, false_value) 語法,可以巢狀多層 if。Formulas 2.0 還支援 ifs(cond1, val1, cond2, val2, ...) 的簡化寫法。
Q:Linked Database 和 Relation 有什麼差別?
Linked Database 是把同一個資料庫的視圖(View)放到另一個頁面上,屬於顯示工具;Relation 是在資料庫結構中建立資料之間的關聯,屬於連結工具。兩者概念完全不同。
Q:Rollup 的結果可以在 Formula 裡引用嗎?
可以,Rollup 是屬性,可以在公式中用 prop("Rollup名稱") 來引用並進行後續計算。進度百分比公式就是這樣搭配使用的。