【发布时间】:2021-08-13 08:31:11
【问题描述】:
这是我想玩的一般主题:
- 顶点:“父”标签
- 边缘:“parent_to”标签
- 顶点:“子”标签
我正在尝试通过执行以下操作来做到这一点:
- 创建“父”顶点并使用
as("parent") - 创建边“parent_to”
- 创建“子”顶点
select("parent)- 重复边和子顶点步骤
例子:
g.addV("parent").property("parent_value","value1").as("parent")
.addE("parent_to")
.addV("child").property("child_value","value2")
.select("parent")
.addE("parent_to")
.addV("child").property("child_value","value3")
问题是这给了我 1 个带有两个子顶点的父顶点,但是边缘循环往返于父顶点,使子顶点“孤立”。
我已经链接了一篇文章,它给了我一个工作模式,但这真的是在一个查询中处理层次结构而不需要递归的最佳方法吗? Other QA
注意:为了举例,添加了一个级别
g.addV("parent").as("parent")
.and(
addV("child").property("child_value","value2")
.addE("parent_to").from("parent"),
addV("child").property("child_value","value3").as("child3").and(
addV("grandchild").property("gchild_value","value4").addE("parent_to").from("child3"),
addV("grandchild").property("gchild_value","value5").addE("parent_to").from("child3")
)
.addE("parent_to").from("parent")
)
因为这将在 AWS Neptune 上使用,所以我必须将所有内容添加到一个查询中以维护事务。
【问题讨论】: