我有一个像这样的SQL表:表示单个SQL表中的记录之间的多对多关系的最佳方式是什么?
更新:我改变了示例表,因为原始数据(州,城市,学校)的现有等级性质掩盖了事实之间需要简单的关系这几项。
entities
id name
1 Apple
2 Orange
3 Banana
4 Carrot
5 Mushroom
我想定义这些实体之间的双向关系,因此查看一个实体的用户可以看到所有相关实体的列表。
关系由最终用户定义。
在数据库中表示这些关系并随后查询和更新它们的最佳方式是什么?我看到它
一种方式...
我的直觉说,一个关系表如下所示:
entity_entity
entity_id_a entity_id_b
1 2
5 1
4 1
5 4
1 3
既然如此,鉴于4提供ENTITY_ID,怎么会一个获取所有相关记录,这将是1和5?
同样ENTITY_ID = 1的查询应该返回2,3,4,5
感谢您的时间,让我知道,如果我可以在任何澄清的问题。
这种方法在实践中运行良好。非常感谢你。 – GloryFish 2009-02-02 16:34:36