这是我的具有图形节点的表“graphtable”。每个元组代表一条无向边。
╔═════════╦═════════╗
║ NODEONE ║ NODETWO ║
╠═════════╬═════════╣
║ A ║ A ║
║ A ║ A ║
║ A ║ B ║
║ A ║ B ║
║ A ║ A ║
║ C ║ D ║
║ C ║ A ║
║ D ║ E ║
║ A ║ E ║
║ D ║ A ║
║ G ║ K ║
║ G ║ G ║
║ K ║ K ║
║ K ║ L ║
║ L ║ M ║
║ Y ║ M ║
║ G ║ L ║
║ G ║ L ║
║ X ║ Z ║
║ D ║ D ║
║ I ║ I ║
╚═════════╩═════════╝
如您所见,此表中有四个不同的无向图。
- 节点(A、B、C、D、E)
- 节点(L、K、G、M、Y)
- 节点(一)
- 节点(X,Z)
我尝试了类似于下面发布的查询;
select nodeone,nodetwo
from
graphtable
start with NODEONE='D'
connect by nocycle prior nodeone=nodetwo
我也可以使用递归查询来遍历图形。
但是,如果我从该特定图中的任何节点开始,我需要获取该特定图中涉及的所有元组。但是,我没有从我的任何查询中得到这个结果。
从 nodeone='A' 开始;似乎返回了所有边缘,但边缘“DD”不存在。从 nodeone='D' 开始;似乎没有返回任何接近先前结果的东西。
请帮助..我提前感谢任何帮助。谢谢你。