递归地获取从一组顶点出现的所有顶点

时间:2017-11-13 19:28:12

标签: graph-databases gremlin tinkerpop janusgraph

我有一个顶点标签“group”,一个组可以有多个“类别”。 例如,名为“food”的组可以具有多个类别,例如“Seafood,Chinese,Indian”,其通过标记为“label1”的边连接。 现在,一个类别可以有更多的类别,如“海鲜”可以有“鱼,虾”等。深度是任意的,所有其他类别都通过标记为“label2”的边连接。

food --label1--> seafood --label2--> fish --label2--> jellyfish --label2--> so on
                                          --label2--> starfish
                         --label2--> prawns
                         --label2--> crab

     --label1--> Indian  
     --label1--> Chinese 

我想递归遍历所有顶点并获取数据。 我希望你理解这个问题。请帮帮我。

1 个答案:

答案 0 :(得分:2)

这很简单:

g.V(food).out("label1").
  emit().
    repeat(out("label2"))