Gremlin 查询:到目前为止,如何获取查询中的所有 "internal" 条边?
Gremlin Query: How to get all "internal" edges in the query so far?
所以我试图在 gremlin 查询中可视化到目前为止的节点以及这些节点之间的边缘;如果可以的话,“内部”边缘。
例如,我有这个 gremlin 查询:
g.V().hasLabel("Person").out("Expert in")
这会产生一组节点。在一般情况下,我如何进行 gremlin 查询以获取此结果集中节点之间的所有边?
感谢您的帮助:)
out()
步骤是outE().inV()
的shorthand,因此获取边的第一步是显式遍历边,使它们成为路径历史的一部分。您可以通过多种方式从该历史记录中获取优势 - path() 步骤怎么样?
g.V().hasLabel("Person").outE("Expert in").inV().path()
我想通了!
这个 gremlin 查询应该可以解决问题:
g.V().hasLabel('Person') // <-- Nodes chosen so far; can be any query resulting in nodes
.dedup()
.union(outE(), inE())
.groupCount()
.unfold()
.where(select(values).is(gt(1)))
.select(keys)
这需要所有出边和所有入边的并集,然后删除那些只出现一次的边。结果是到目前为止查询中节点之间的所有边缘:)
所以我试图在 gremlin 查询中可视化到目前为止的节点以及这些节点之间的边缘;如果可以的话,“内部”边缘。
例如,我有这个 gremlin 查询:
g.V().hasLabel("Person").out("Expert in")
这会产生一组节点。在一般情况下,我如何进行 gremlin 查询以获取此结果集中节点之间的所有边?
感谢您的帮助:)
out()
步骤是outE().inV()
的shorthand,因此获取边的第一步是显式遍历边,使它们成为路径历史的一部分。您可以通过多种方式从该历史记录中获取优势 - path() 步骤怎么样?
g.V().hasLabel("Person").outE("Expert in").inV().path()
我想通了!
这个 gremlin 查询应该可以解决问题:
g.V().hasLabel('Person') // <-- Nodes chosen so far; can be any query resulting in nodes
.dedup()
.union(outE(), inE())
.groupCount()
.unfold()
.where(select(values).is(gt(1)))
.select(keys)
这需要所有出边和所有入边的并集,然后删除那些只出现一次的边。结果是到目前为止查询中节点之间的所有边缘:)