lis*_*ite 0 sql database-design join
嗨,我需要能够链接相关的应用程序,并试图找出保存,更新和删除的最佳实践表结构.
我有下表:
APPLICATION{ApplicationId, Name, Description}
Run Code Online (Sandbox Code Playgroud)
我需要能够说应用程序1链接到2和3.因此,如果打开应用程序2,您会看到它链接到应用程序1和3.然后应用程序3链接到1和2.
链表的最佳表结构是什么?
编辑
我的主要查询是我需要每个连接的记录,即对于应用程序1,2和3,我需要6条记录吗?1-> 2,1-> 3,2-> 1,2-> 3,3-> 1,3-> 2 ?? 如果不是,返回给定ID的所有链接应用程序的最佳查询是什么?
application_association
-------------------------
application_1_id
application_2_id
relationship_type
begin_dt
end_dt
Run Code Online (Sandbox Code Playgroud)
使用relationship_type指定应用程序的关联方式,并使用日期指定该关系何时有效
编辑:
也许对你使用"链接"这个词有一个集体的误解.
如果你的意思是'分组',那么你可能会考虑如下结构:
group
------------------
group_id
name
application_group
-------------------
application_id
group_id
Run Code Online (Sandbox Code Playgroud)
在这里,您可以将应用程序放入同一个"组"中,然后在它们位于同一组中时将它们全部追回.