假设表A与表B有多到多的关系,表B与C有多到多的关系。为AB和BC创建了两个连接表,以形成多到多的关系。如何查询这些表,以便返回表A、B和C之间的所有相关记录?
像这样的设置是糟糕设计的标志吗?
编辑:为了列出我的具体问题,我有一个电子设备表。每个设备都可以具有wifi等功能,并且每个功能都可以应用于该设备。现在,每个特性都可能带来安全风险,同样的风险也可能适用于多个特性。所以我有很多设备,有很多功能,还有很多安全风险。我的目标是以这种形式得到一个问题的结果,“为每个设备,向我展示每个特性,以及它所造成的安全风险”。
发布于 2016-06-22 18:03:07
我认为这是一个健全的设计,基于所谓的联合实体。查询:
Select A.FieldList..., B.FieldList..., C.FieldList...
From A
Join AB On AB.AID = A.ID
Join B On B.ID = AB.BID
Join BC On BC.BID = B.ID
Join C On BC.CID = C.IDhttps://dba.stackexchange.com/questions/141901
复制相似问题