Tinkerpop Gremlin:将多个选择查询批处理为一个批处理选择查询

Tinkerpop Gremlin:将多个选择查询批处理为一个批处理选择查询,gremlin,tinkerpop,tinkerpop3,Gremlin,Tinkerpop,Tinkerpop3,在《小叮当小精灵》中, 我有两个选择查询 g.V().has(“id”,“foo”).out().values(“x”).toList() g.V().has(“bar”、“foo”).out().values(“id”).toList() 现在我们能把这些查询合并成一个批量的小叮当吗? 我试过了 g.V().has(“id”,“foo”).out().values(“x”).union(uuu.V().has(“bar”,“foo”).out().values(“id”).toList() 但

在《小叮当小精灵》中, 我有两个选择查询

  • g.V().has(“id”,“foo”).out().values(“x”).toList()
  • g.V().has(“bar”、“foo”).out().values(“id”).toList()
  • 现在我们能把这些查询合并成一个批量的小叮当吗? 我试过了
    g.V().has(“id”,“foo”).out().values(“x”).union(uuu.V().has(“bar”,“foo”).out().values(“id”).toList()


    但这导致了一个单一的列表,而不是两个单独的列表。我想分别提取这两个查询的响应。

    您可以使用一些伪值开始遍历,然后
    union()
    将两个遍历一起进行:

    gremlin> g.inject(0).union(V(1).out().fold(),V(2).in().fold())
    ==>[v[3],v[2],v[4]]
    ==>[v[1]]
    

    inject
    g.V(1).out().fold().union(identity(),V(2).in().fold())