Notionの「ロールアップ」プロパティの使い方
Notionでは、データベース同士を「リレーション」で関連づけることができる。
たとえば「親ページ(例:プロジェクト)」と「子ページ(例:ToDo)」を関係づけた場合、
親ごとに「何件のToDoが関連しているか」「最も早く訪れる締切はいつか」などを自動で集計したいことがある。
このようなときに使うのが「ロールアップ(Rollup)」プロパティである。
手順
1. 親データベースに「リレーション」プロパティを作成する
対象は「子データベース」
例:「Tasks」というDBを「Projects」に紐づける
2. リレーションを設定する
親ページで「Tasks」プロパティを開き、関連するタスクを選択する
この段階で親に複数の子ページがリンクされている状態になる
3. ロールアップを追加する
親ページで「プロパティを追加」→「ロールアップ」を選択
「リレーション」で上記の「Tasks」を選び、「プロパティ」で「名前」など任意のプロパティを選択
「計算」項目で 「カウント(Count)」 を選ぶ
4. 結果を確認する
各親ページに、関連付けられた子ページ(タスク)の数が表示される
これにより「タスク数」などを自動的に集計できる
応用
条件付きカウント:
たとえば「完了済みタスクだけ数える」場合は、「Tasks」側でステータスプロパティを作り、ロールアップでそのプロパティを参照して「完了」の件数を数える。
https://scrapbox.io/files/68f7589318241301b7d5d383.png
最も早い期限の抽出:
たとえば、子ページ(タスク)側に「期限(日付)」プロパティがある場合、親ページごとに「最も早い締切日」を自動で表示することができる。
手順
1. 親データベースでロールアップを追加する
2. 「リレーション」に子データベース(例:「Tasks」)を指定
3. 「プロパティ」に「期限(日付)」を選択
4. 「計算」で 「最も古い日付」 を選ぶと、関連するタスクの中から最も早い期限が抽出される
https://scrapbox.io/files/68f758b818241301b7d5d58d.png
まとめ
table:table
用語 役割
リレーション データベース間を紐づける
ロールアップ 関連データから値を集計する
Count 関連レコードの件数を数える