我有一张包含图中从节点x到节点y的边的表格。
我希望创建一个(物化)视图,它表示从x到节点y的路径包含的最短节点/跳数:
n1 | n2
-------
a | a
a | b
a | c
b | b
b | d
b | c
d | e
我希望创建一个(物化)视图,它表示从x到节点y的路径包含的最短节点/跳数:
n1 | n2 | c
-----------
a | a | 0
a | b | 1
a | c | 1
a | d | 2
a | e | 3
b | b | 0
b | d | 1
b | c | 1
b | e | 2
d | e | 1
我应该如何建模我的表和视图以方便这个过程?我想我需要一些递归的方式,但我相信在SQL中实现这个是非常困难的。例如,如果路径包含10个节点/跳数,我希望避免客户端需要触发10个查询。