起心動念

關於日期時間的處理,因為有很多不一樣的呈現的方式,或是有各種的需求,以至於很多人在 View 的呈現上碰到一些困難,網上其實有很多大大們的教學分享,不過我想就在這裡做一個整理與應用的說明。

與日期相關的函數

在開始練習公式之前,請大家一定要先了解,每一種「函數」是不同的類別的,為什麼要先區分函數的類別呢?因為只有相同類別才可以疊加或是相減,就像是只有數字才可以做數學運算,只有文字可以做成句子。

在 Notion 的公式函數中,與日期時間相關的函數共有六個:

其他不是日期時間函數,但在應用方面不可或缺的函數也有不少,如:

Untitled

日期時間的公式應用

關於 formatDate 的基礎操作

→ 有文字屬性的函數,增加不同的呈現方式 → 用於提取日期時間的部分資訊,如時間、星期幾、哪個月、哪一年

將日期時間改成昨天、今天、明天

針對”月份”的其他操作

時間區間的計算

一段時間的倒數 - 進度條顯示

在 Name 的欄位輸入日期,並在對應的欄位顯示日期格式

在”判斷”方面

心得感想

我在運用 Notion 管理工作與生活時,發現有很多狀態是需要篩選器來呈現不同的樣式,但是如果單純只想透過篩選器的部分來呈現,其實有時挺受限制的,尤其早期他的篩選器項目其實沒有這麼多,且有些命名上挺容易誤會,這時透過公式先判斷,之後再以篩選器呈現會是個不錯的解決方案。

其中最讓我覺得最受益的,就是在待辦事項的部分,我有些任務會跨日期,例如:2023/02/01~2023/03/15,如果我透過篩選器設置,他會以日期開始的那一天作為計算的依據,當我在篩選器中設置要顯示近一個月的任務,那當日期到了2023/03/02,這個任務就不會顯示在待辦事項中,且這個篩選器呈現的畫面會超多,因為它會顯示近一個月的任務清單。如果我希望他不要顯示這麼多,且不想手動顯示的區間,那我可以透過公式先判斷「今天是否是在日期區間中」,這個公式判斷的結果是 Boolean ,因為先透過公式判斷了,在篩選器的部分,只要當這個欄位是 true 的狀態就顯示在該 View 中。

一直以來,很常覺得與日期時間有關的資料庫公式,是很複雜與麻煩的,尤其加入了正則表達式的時候,看起來就更不友善了,但要讓整個模板更好用,就不要逃避這個寫起來有點麻煩的函數。如果之後我有什麼新的需求,或是看到更厲害的資料,會更新在這篇筆記中的。

更新2023.09.23

在今年的九月初 Notion 官方公布在公式部分有大版更,有很多的函數命名不太一樣,有些部分已經有修改成新版本的命名方式,之後有時間 + 心情不錯的話會陸陸續續更改資料的~~

如果你很趕或是想要直接自己修改,可以參考這篇 Notion Formula 2.0 。