Notion Relation & Rollup | 關聯性與資料擷取 — Part 2/2
這篇接續上一篇 <Notion Relation & Rollup | 關聯性與資料擷取 — Part 1/2>,文章中介紹了↗Relation & 🔍Rollup 的經典範例 —訂單系統,並且更進一步示範了如何利用同樣的原理改良成更合理的系統。
在這一篇中,我會介紹一些在我自己的系統中應用這些功能的情境。
我的應用情境
做完上面的訂單系統,我想大部分人都用不到這樣的東西。不過,以觀念來說,這樣的架構我其實已經在 <Notion Personal Project Management | 個人專案管理工具> 中介紹過,可以應用在個人的專案及任務管理上。
除此之外,以下舉幾個我使用↗Relation & 🔍Rollup的應用例子。
1. 計算專案總花費時間
在談個人專案管理的文章中沒有特別提到,但這是在我個人的系統中有使用到的功能,在專案上花費的時間是很有用的量化指標。
下圖的例子,是在專案資料庫中,透過 ↗Relation & 🔍Rollup ,抓取完成個別任務所花費的時間,加總計算專案的時間。不管是個人或者是團隊專案中,可以計算出所花費的時間資源,並用來評估專案的 ROI。
2. 利用關聯資料庫的欄位進行資料篩選 (filter)
在 Notion 中,我們常常需要利用篩選器 (filter) 來篩選顯示的資料,但有時候所需要的篩選條件在其他的資料庫中。
下面的例子就是在任務資料庫中擷取所屬專案狀態的標籤,並且設定篩選器,不顯示專案狀態為 “Pending”的任務,畢竟,專案都暫停了,顯示它所屬的任務只是佔版面而已。
3. 減少重複輸入
在 Notion 的應用中,我們希望系統可以盡可能地自動化,減少不必要的輸入;如果需要輸入,則盡量同樣的資訊只輸入一次。
因此,透過 Rollup 取得其他資料庫中已經輸入的資料,就是其中一種減少輸入的方式,在 <Notion Weekly Management System |每週任務規劃系統> 中,就是使用這樣的方式來取得時間資訊。
由於任務 (Task) 資料庫跟每日追蹤(Daily Traking)資料庫中,都沒有時間資訊,因此透過與每週規劃資料庫的關聯性,取得期間 (Duration)的最早日期(Earliest Date),並透過這個資訊與星期幾 (Day of Week) 計算出任務執行及每日追蹤的日期資訊。
🔍Rollup 祕技:擷取兩層以上關聯資料
最後,由於系統的限制,Notion 中沒有辦法 🔍Rollup 另一個 🔍Rollup。以第一個訂單系統為例,是沒辦法直接從客戶資料庫中 🔍Rollup 隔兩層關聯的產品資料庫中的資訊。但是沒關係, Notion 就是有很多的 Workaround 🥸。
假設我們想要在最右邊的客戶資料庫中,取得最左邊的產品資料庫中,的產地(Made in)資訊 (見下圖第一欄位)。
我們可以先在中間的資料庫中建立 🔍Rollup,取得產地資訊,再利用函式欄位來鏡射 (Mirror) 這個資訊。(如下圖第一、二欄位,簡單來說,就是讓新增的欄位等於原來的 🔍Rollup)
最後客戶資料庫中,建立 🔍Rollup 取得上一步鏡射的資料欄位,完成!(見下圖第一欄位)
雖然這個例子大概不算很合理的應用,得到的資料是客戶所購買產品的產地分布,不確定可以做什麼。不過,還是證明可以透過這個方法,進行多層的 🔍Rollup,有需要的可以試試看這個方法。
總結
原本只是想要簡單解說 ↗Relation & 🔍Rollup 的功能,結果寫得比我預想的長很多。如果覺得這篇文章有對你有幫助,請不要忘記幫我拍手並給我一點回饋🥸。
如果喜歡這一篇文章,也歡迎點進我的〈Notion 文章目錄〉,裡面有更多關於 Notion 章。