Gremlin - 一次添加多个子顶点 - addV 和 step
Gremlin - Adding multiple child vertices in one go - addV and step
这是我想玩的一般主题:
- 顶点:“父”标签
- 边缘:“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 个父顶点和两个子顶点,但是边循环往返于父顶点,使子顶点“孤立”。
我已经链接了一个 post 给了我一个工作模式,但它真的是在一个查询中处理层次结构而不需要递归的最好方法吗? 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 上使用,所以我必须将所有内容添加到一个查询中以维护事务。
您的查询已结束,只是缺少指定 from() or to() 步骤来告诉 addE() 连接哪些顶点。在这种情况下,您可能想要使用此处所示的 to() 步骤。
g.addV("parent").
property("parent_value", "value1").as("parent").
addE("parent_to").to(addV("child").property("child_value", "value2")).
select("parent").
addE("parent_to").to(addV("child").property("child_value", "value3"))
这是我想玩的一般主题:
- 顶点:“父”标签
- 边缘:“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 个父顶点和两个子顶点,但是边循环往返于父顶点,使子顶点“孤立”。
我已经链接了一个 post 给了我一个工作模式,但它真的是在一个查询中处理层次结构而不需要递归的最好方法吗? 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 上使用,所以我必须将所有内容添加到一个查询中以维护事务。
您的查询已结束,只是缺少指定 from() or to() 步骤来告诉 addE() 连接哪些顶点。在这种情况下,您可能想要使用此处所示的 to() 步骤。
g.addV("parent").
property("parent_value", "value1").as("parent").
addE("parent_to").to(addV("child").property("child_value", "value2")).
select("parent").
addE("parent_to").to(addV("child").property("child_value", "value3"))