获取具有特定边的顶点-删除重复项



我需要导出一些连接到它的顶点。没有任何投影-就像数据转储一样。我想要实现的是删除result(json文档(中多余的顶点。假设有一个图形结构:

g.V().has('id', '000-000').as('a').out().as('b').out().as('c').select('a','b','c')
==>[a:v[1],b:v[4],c:v[5]]
==>[a:v[1],b:v[4],c:v[3]]

我想得到这样格式的结果:

==>[a:v[1],b:v[4],[c:v[5], c:v[3]]]

如果会有更多的bc顶点,类似于

==>[a:v[1],[b:v[4],b:v[7]],[c:v[5], c:v[3], c:v[9]]]

只是为了使输出数据(json(更小。

目前我得到了这样的东西:

[{
"a": {},
"b4": {},
"c5": {}
},
{
"a": {},
"b4": {},
"c3": {}
}]

并且希望拥有:

[{
"a": {},
"b": [
{b4},
{b4}
],
"c": [
{c5}, 
{c3}
]
]}

我应该使用哪些操作符来实现这一点?

最好的方法是在Gremlin中使用project()步骤。如果要在每个字段中列出值,可以使用fold()将它们放入列表中。示例:

g.('000-000').project('a','b','c')
.by()
.by(out().fold())
.by(out().out().fold())

最新更新