データベース スキーマの設計について教えてください。
すなわち。私の問題は、1 つのアクティビティに 1..* date_held があることです。
例えば。活動名は
「映画を見る」の date_held は 9 月 1 日です
"shopping" の date_held は 9 月 2 日、9 月 5 日、9 月 6 日です。
方法1
私の現在のデータベース設計は
---------------------------
Activity Table
---------------------------
id|name|date_held
1|see moive|20120901
2|shopping|20120902
3|shopping|20120905
4|shopping|20120906
買い物履歴が3回重複していることが分かります。よくないように思います。
方法2
だから私は3つのテーブルに分けます
---------------------------
Activity Table
---------------------------
id|name
1|see moive
2|shopping
---------------------------
Date Table
---------------------------
id|date
1|Sep 1
2|Sep 2
3|Sep 5
4|Sep 6
---------------------------
Activity_Date Table
---------------------------
activity_id|date_id
1|1
2|2
2|3
2|4
しかし、方法2は非常に混乱していると思います。1 アクティビティマッチ 1..* date_held?
ありがとう!!
こんにちは、ブランコ・ディミトリイェビッチ
数時間考えた後、別の方法を発見しました。つまり、redis json形式を使用します
{
"名前":"ショッピング",
"日にち":[
「9月1日」
]
}、
{
"name": "映画を見る",
"日にち":[
「9月2日」「9月5日」「9月6日」
]
}
とても簡単に思えます〜:D
しかし、私はあなたの提案を考えさせてください..