首页 > 解决方案 > Tinkerpop Gremlin:将多个选择查询批处理为一个批处理选择查询

问题描述

在 Tinkerpop Gremlin 中,我有两个选择查询

  1. g.V().has("id","foo").out().values("x").toList();
  2. g.V().has("bar","foo").out().values("id").toList();

现在我们可以将这些查询合并到一个批处理的 tinkerpop gremlin 中吗?我试过 g.V().has("id","foo").out().values("x").union(__.V().has("bar","foo").out().values("id")).toList()

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

标签: gremlintinkerpoptinkerpop3

解决方案


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

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

推荐阅读