假设我有两个表,称为“节点”和“链接”。 (简化示例,但实际上这些是沿着铁路轨道的节点)。
“节点”表的示例:
NodeID Xcoord Ycoord
------ ------ ------
21 2.010 -1.500
22
23
24
25
26 2.050 -1.500
“链接”表的示例:
LinkID StartNode EndNode
------ --------- ------
1 21 22
2 22 23
3 23 24
4 24 25
5 25 26
如您所见,并非所有节点都具有已知位置(xcoord& ycoord)。
假设我选择了一个没有位置的节点,例如NodeID 23。
我想要做的是在两个方向上遍历链接表,直到找到每个方向上具有已知位置的下一个节点。
因此,如果我使用NodeID 23,我想要一个遍历链接表并返回21和26的NodeID的查询。
使用Postgres可以吗?
不是SQL专家;无法理解如何通过这样的表来递归。
任何例子都会感激不尽! 提前谢谢。