對於sql中的多對多關係,我有一個快速問題。 因此,理論上我明白,如果ER模型中的兩個實體之間存在M:N關係,我們必須將它分解爲2 1:N關係,其中包含交叉點/查找表,其中包含複合主鍵父表。但是,我的問題是,除了組合主鍵以外,是否還有任何其他額外的列添加到組合表中並且不在任何兩個父表中? (除了intersectionTableId,table1ID,table2ID)4rth列是全新的,並且不在任何2個父表中?請告訴我。使用SQL m:n關係進行查詢
1
A
回答
0
是的,你可以通過顯式地建模「關係」表(就像你的其他實體)來做到這一點。
以下是關於該問題的一些文章。
Create code first, many to many, with additional fields in association table
Entity Framework CodeFirst many to many relationship with additional information
+0
謝謝大家:)非常感謝。 – Vish
2
在一個字 - 是的。表示兩個實體之間關係的屬性是一種常見的做法。
例如,考慮你有一個數據庫,用於存儲人的細節和他們喜歡的運動隊:
CREATE TABLE person (
id INT PRIMARY KEY,
first_name VARCHAR(10),
last_name VARCHAR(10)
);
CREATE TABLE team (
id INT PRIMARY KEY,
name VARCHAR(10)
);
一個人可能喜歡一個以上的團隊,這是你的經典M:N關係表。但是,您也可以爲此實體添加一些詳細信息,例如某人開始喜歡某個團隊的時間:
CREATE TABLE fandom (
person_id INT NOT NULL REFERENCES person(id),
team_id INT NOT NULL REFERENCES team(id),
fandom_started DATE,
PRIMARY KEY (person_id, team_id)
);
相關問題
- 1. SQL查詢與M:N的關係
- 2. 查詢(M:N)由關係有序屬性
- 3. SQL SELECT與m:n的關係
- 4. SQL表中的M:N關係
- 5. 如何使用具有CriteriaBuilder的枚舉查詢M:N關係
- 6. SQL Server查詢表m:n
- 7. 如何在M:N關係中對兩個表執行SELECT查詢?
- 8. 自我M:N關係
- 9. C#CRM m:n關係
- 10. SQL關係查詢
- 11. SQL關係查詢
- 12. 使用NSFetchedResultsController與M:N的關係
- 13. 與GORM查詢M:N關係的實體實例_not_彼此之間的關係?
- 14. 使用外鍵關係的SQL查詢
- 15. 使用查詢列出sql表關係
- 16. Laravel 4上的M:N關係
- 17. CoreData - Xcode 5 - M:N關係
- 18. 使用SQL查詢使行進入列
- 19. 的Sql查詢,組關係
- 20. SQL父子關係查詢
- 21. SQL關係和查詢
- 22. 親子關係 - SQL查詢
- 23. webmatrix - sql查詢關係
- 24. 如何使用SQL查詢中的查詢進行查詢
- 25. Laravel Eloquent - 進行查詢時的關係中的關係
- 26. Sqlalchemy + elixir:如何使用ManyToMany關係進行查詢?
- 27. 使用HQL進行多對多關係的次優查詢
- 28. 在Django中使用通過多對多關係進行查詢
- 29. Laravel模型,關係如何使用Eloquent進行innjoin查詢?
- 30. LINQ查詢,使用關係
什麼是DBMS?以及如何創建交點表? –
絕對!在這樣一張桌子上關於BELONGS的數據。考慮客戶/電影租賃數據庫。我想知道什麼客戶檢查了什麼電影作爲客戶可以有許多電影,並且一次只能由一個客戶檢查電影;但我希望看看電影的歷史記錄,並知道它何時返回。關聯表可能有一個Checkout和一個CheckIn日期;這將告訴我一個客戶的結帳歷史和持續時間,也許根據電影屬和客戶租用的電影,建議上市可能會創建... – xQbert