こんにちは!ゆかゆかです。
データのリレーションで混乱してしまうとご意見頂いたので、
今日は複数のコレクションを使う場合について整理をしてみたいと思います!
↓こちらの選択で悩む方に向けてご説明します。
少しでもデータの関係をスッキリさせられるよう頑張ります!
モデルケースの紹介
今回の前提として、ファストフードの「注文」を参考に説明していきます。
▼データ関連のイメージ図
データ関連のイメージ図の見方を紹介
例えば、注文No C001の場合・・・
井上さんが注文した商品は以下の3つです。
- P001:ハンバーガー
- P003:ポテト
- P004:コーラ
商品は3つのジャンルに分類分けされています。
- J001:バーガー
- J002:サイド
- J003:ドリンク
例えば、ハンバーガーのジャンルは「J001バーガー」になります。
コレクションのリレーション
それではコレクションのリレーションの見分け方を確認します!
- Database Collections > ADD PROPERTY > Relationship > コレクション名
と選択していくと、このような選択画面が出てきますね。
- 上の2つは「1対N」の関係です。
- 下の1つは「N対N」の関係です。
大丈夫です!ゆっくり考えれば、正解が見えきます!
それでは、「1対N」と「N対N」の関係について説明していきます。
N対Nの関係を説明
注文と商品の関係をサンプルに使用します。
まずは上の説明を説明します。
A 注文 can have multiple 商品s
▶︎注文には複数の商品が存在する。
A 商品 can have multiple 注文s
▶︎商品には複数の注文が存在する。
今回の、モデルケースのイメージに注文・商品それぞれの関連を赤枠で明記してみました。
- 注文は複数商品を選べます。
- 商品は複数の注文に紐づいています。
→つまり、注文と商品は「N:N」の関係となります。
1対N(N対1)の関係を説明
商品とジャンルの関係をサンプルに使用します。
まずは上の説明を説明します。
A ジャンル can have multiple 商品s
▶︎ジャンルには複数の商品が存在する。
A 商品 belongs to one ジャンル
▶︎商品は一つのジャンルに属する。
さらにもう一つの説明を説明します。
A ジャンル can only have one 商品
▶︎ジャンルには1つだけの商品が存在する。
A 商品 can have multiple ジャンルs
▶︎商品は複数のジャンルに属する。
今回の、モデルケースのイメージに商品・ジャンルそれぞれの関連を赤枠で明記してみました。
- 商品は1つのジャンルに属します。
- ジャンルには複数の商品が存在します。
→つまり、商品・ジャンルは「N:1」の関係となります。
まとめ
今日はご質問いただいた、データコレクションのリレーション設定について、考え方を整理してみました。
それぞれのコレクションに対して、関連させると何個存在するか、エクセルなどでまとめてみると間違わずに設定できます。
個人的な感想としては、リスト表示する際に、複数選択を許すか、単一選択を許すかを判定するための設定だと思っています。
複数選択か単一選択か考えながら設定してみるといいかもしれません。
一度ではスッとは理解できないかもしれませんね。
わからないところはコメントやお問い合わせフォームより教えていただけると、ありがたいです。
最後までご覧いただき、ありがとうございました。
♥・*:.。 。.:*・゚♡・*:.。 。.:*・゚♥
▽ NoCodeアプリ Adalo