我的应用程序是关于艺术家画墙的。
在这一点上,艺术家有很多墙,一堵墙属于艺术家。
但现在我想让一堵墙成为许多艺术家的归属。(有时一面墙是由2个或更多艺术家绘制的...
我无法为自己找出解决这个问题的最佳方法。怎么样:
1 - 数据透视表:artist_wall沃尔属于许多艺术家的地方和艺术家有很多墙
• 可能吗? 还是我必须有双方的归属关系?
• 我已经有 150+ 墙记录与artist_id字段。感觉在数据透视表中转移关系是一项冒险的任务
2 - 墙桌上的一排artist_ids
• 那我想我会失去雄辩关系的好处
• 看起来很脏
有什么经验可以分享吗?是否足够清楚?我正在使用Laravel 5。
谢谢!
你们有多对多的关系。您应该有 3 张表:
- 艺术家(ID、描述等)
- Artists_Walls (ArtistID, WallID, ...)
- 墙壁(ID,描述,...)
然后,您可以使用连接来获取例如艺术家的所有墙壁,如下所示:
select * from Artists a
inner join Artists_Walls aw on a.ID = aw.ArtistID
where a.ID = '1'
如果你想要相反的东西,那么你通过加入Walls
来做相反的事情Artists_Walls