我有一个表,表中的对象之间有一个自身的、不对称的多对多依赖关系。我使用这种关系在对象之间创建一个可靠的树
有了一组对象ID,我想获取依赖树中某个地方的所有对象
下面是一个示例对象表:
+----+------+
| ID | Name |
+----+------+
| 1 | A |
| 2 | B |
| 3 | C |
| 4 | D |
| 5 | E |
+----+------+
以及关系表:
+------------+-----------+
| Dependancy | Dependant |
+------------+-----------+
| 2 | 1 |
| 3 | 2 |
| 4 | 1 |
+------------+-----------+
显示A (ID: 1)
依赖于B(2)
和D(4)
,而B(2)
依赖于C(3)
现在,我想构造一个SQL查询,将{1}
作为一个具有单个ID的集合,将返回A
的依赖树中的四个对象:A
、B
、D
和C
。
或者,使用一个查询获取所有需要的对象ID,使用另一个查询获取它们的实际数据也是可以接受的
无论依赖关系/层次结构树中的级别有多少,这都应该是有效的
我很乐意为postgresql 10数据库提供一个SQLAlchemy示例或纯SQL(稍后我将看到如何使用SQLAlchemy实现)
谢谢
目前没有回答
相关问题 更多 >
编程相关推荐