MENU

【初心者】Notionのデータベースのリレーションとロールアップの使い方

Notionではデータベース同士を紐付けられる「リレーション」と紐付けたデータベースから値を参照する「ロールアップ」という機能があります。

初心者の方には分かりづらい機能の一つだと思っていますが、使いこなすと既存の色々なテンプレートをカスタマイズできるようになるので便利です。

目次

ロールアップは違うデータベースから値を取得すること

Notionでは、データベースから違うデータベースに関連づけることを「リレーション」、その関連づいたデータベースから値を取得することを「ロールアップ」と言います。

Excelでいうと、VLOOKUP関数のようなものが近いですね。 例えば、下のような「商品一覧」と「売上記録」の2つの表があります。

このときに「売上記録」の価格を数字を手入力せず、品名から自動的に価格が出てくるようにしておくようなイメージです。

これと同じようなことがNotionでもできます。

今回の完成系

以前作ったタスク管理を、リレーションとロールアップを使ってプロジェクトを指定できるようにしたデータベースです。

タスクのステータスを「完了」にすると、「プロジェクト」の「完了数」と「完了率」の値が変わるようになっています。

やり方

まずは以下からテンプレートを複製してください。

タスクにリレーションを追加する

タスク表の右上の[+]をクリックします。

[リレーション]をクリックします。

※プロパティの種類が多いのでバルーンの中に埋まっていることがあります。スクロールして探してみてください。

リレーション対象に「プロジェクト」を選択してクリックします。

制限を「1ページ」、プロジェクトに表示を「ON」にして、[リレーションを追加]をクリックします。

新しいプロパティとして「プロジェクト」を追加は出来ているものの、非表示になっているのでそれを表示できるようにします。

表の右上の「・・・」をクリックします。

「プロジェクト」右の目のアイコンをクリックします。

これでタスクのデータベースには「プロジェクト」、プロジェクトのデータベースには「タスク」が追加できました。

タスクにプロジェクトを関連づける

プロジェクトに関連づけたいタスクの「プロジェクトのセル」をクリックし、関連先のタイトルをクリックします。

このときにプロジェクト表では「タスク」に関連づいたページタイトルが表示されているのが確認できます。

ポイント

タスクにプロジェクトを関連づけると、下の図のようにプロジェクトの1つと関連づいて、プロジェクトのデータベースの情報をロールアップで取得できるようになります。

プロジェクトに関連づいているタスクを表示する

プロジェクトの達成率を計算式は「完了したタスク数 ÷ タスクの総数」となるので、それぞれ列を追加していきます。

表の右上「+」をクリックします。

「ロールアップ」をクリックします。

①プロパティ名を「タスク総数」として、②プロパティを「タスク」、計算を「すべてカウント」にします。

これで「タスク総数」が表の列に追加できました。

完了したタスクを計算する

次に完了したタスクをカウントする必要がありますが、ロールアップには「ステータスがDoneのとき」といった条件を付けてカウントすることができません。

そのため、ロールアップする前に条件を付けておく必要があります。 具体的にはタスク表に「完了だったら『1』にする」といった関数の列を作り、プロジェクト表からその合計数をロールアップします。

タスク表の右の[+]をクリックします。

[関数]をクリックします。

①プロパティ名を「完了」とし、②「関数  編集」をクリックします。

①関数の中には次のように入力します。

prop("ステータス") == "🙌 完了"

入力し終わったら、②[完了]をクリックします。

次にプロジェクトの表の右の[+]をクリックします。

[ロールアップ]をクリックします。

①プロパティ名に「完了数」と入力して、②「リレーション 選択」をクリックして、③[タスク]をクリックします。

①[プロパティ]を完了、②[計算]をクリックして③「チェックあり」をクリックします。

これで完了数が表示されるようになりました。

プロジェクトの表の右側の[+]をクリックします。

[関数]をクリックします。

①プロパティの名前に「達成率」と入力し、②「関数  編集」をクリックします。 そして③数式を入力し、④[完了]ボタンをクリックします。

prop("完了数") / prop("タスク総数")

①[数値の形式]を「パーセント」にして、②表示方法から「リング」をクリックします。

これで表としての機能は完成しました。

最後に一覧する上では邪魔になりそうな列を非表示にしたり、列を並べ替えるとできあがります。

完成したテンプレートのダウンロード

完成したテンプレートは以下から複製できます。

まとめ

機能を知るだけでは使いこなすのが難しいリレーションとロールアップですが、1ステップ・1ステップとじっくり進めると、データベースがどのような動きをしているのか理解できると思います。

配布されているテンプレートの多くはこの機能を利用して、親子関係のあるデータベースを作っています。気になったテンプレートがあったら、プロパティを覗くと発見ができて面白かったです。

今日はここまで。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

プログラミング・Notion・デザインが大好き。
エンジニア→デザイナー→ディレクターそれぞれ数年経験してフリーランスになるものの職場が欲しくなり会社員に。今はデータ分析のお仕事をしています。

目次