遍历orientdb图,sql-traverse vs gremlin

时间:2015-07-30 06:11:25

标签: orientdb gremlin

我想建模链接节点数据集:

Node(A)----next---->Node(B)----next---->Node(C)

应用SQL-Traverse:

traverse out('next') from Node(A)

将包括节点(A)的结果; A,B,C,这是所需的输出, 在哪里使用gremlin:

g.('Node(A)').as('start').out('next').loop('start')

只会返回B,C,

我的问题是如何在gremlin中发出节点A,然后是其他节点,它们的链接顺序相同,我更喜欢最终结果为pipline;即我尝试了aggregate(),但问题是它会让我使用聚合集合作为新的遍历的新pipline的起点,我不想要这种行为,任何想法?感谢。

1 个答案:

答案 0 :(得分:1)

我认为path会做你想做的事:

gremlin> g = TinkerGraphFactory.createTinkerGraph()
==>tinkergraph[vertices:6 edges:6]
gremlin> g.v(1).as('s').out().loop('s'){true}{true}.path()
==>[v[1], v[3]]
==>[v[1], v[2]]
==>[v[1], v[4]]
==>[v[1], v[4], v[3]]
==>[v[1], v[4], v[5]]