Select gremlin 查询中的多个边和顶点
Select multiple edges and vertexes in a gremlin query
我正在创建一个具有多条边的顶点,但需要一些帮助来编写查询来检索数据。
创建查询
g.addV("referral")
.as("r")
.property("createdAt", Date.now())
.addE("prospect")
.from_("r")
.to(__.V(user.id))
.addE("opportunity")
.from_("r")
.to(__.V(second_user.id))
.addE("referredBy")
.from_("r")
.to(__.V(business.id))
.select("r")
.next()
我想 运行 一个从第一个和第二个用户获取数据的查询。到目前为止我有
g.V(business.id) //business
.in_("opportunity")
.as("referral")
.outV("referredBy")
.as("referrer")
.inV("prospect")
.as("prospect")
.select("referral", "referrer", "prospect")
.toList()
.next()
我在 运行 执行此查询时遇到错误。我基本上想要一个我可以迭代的对象中的推荐人、推荐人和潜在客户的数组。此外,任何有助于改进我的初始查询的帮助都会有所帮助。
请让我知道这是否有意义或者您是否需要任何其他信息。任何帮助将不胜感激。
这些错误是因为您在应该使用 out
时使用了 outV
。你只需要在 outE
和 inE
之后使用 inV
和 outV
。所以你的查询应该是
g.V(business.id) //business
.in("opportunity")
.as("referral")
.out("referredBy")
.as("referrer")
.in("prospect")
.as("prospect")
.select("referral", "referrer", "prospect")
.toList()
你也不需要 next
因为你已经有了 toList
.
最后,我不会使用 as
和 select
,而是查看 path
步骤。
g.V(business.id) //business
.in("opportunity")
.out("referredBy")
.in("prospect")
.path()
.toList()
我正在创建一个具有多条边的顶点,但需要一些帮助来编写查询来检索数据。
创建查询
g.addV("referral")
.as("r")
.property("createdAt", Date.now())
.addE("prospect")
.from_("r")
.to(__.V(user.id))
.addE("opportunity")
.from_("r")
.to(__.V(second_user.id))
.addE("referredBy")
.from_("r")
.to(__.V(business.id))
.select("r")
.next()
我想 运行 一个从第一个和第二个用户获取数据的查询。到目前为止我有
g.V(business.id) //business
.in_("opportunity")
.as("referral")
.outV("referredBy")
.as("referrer")
.inV("prospect")
.as("prospect")
.select("referral", "referrer", "prospect")
.toList()
.next()
我在 运行 执行此查询时遇到错误。我基本上想要一个我可以迭代的对象中的推荐人、推荐人和潜在客户的数组。此外,任何有助于改进我的初始查询的帮助都会有所帮助。
请让我知道这是否有意义或者您是否需要任何其他信息。任何帮助将不胜感激。
这些错误是因为您在应该使用 out
时使用了 outV
。你只需要在 outE
和 inE
之后使用 inV
和 outV
。所以你的查询应该是
g.V(business.id) //business
.in("opportunity")
.as("referral")
.out("referredBy")
.as("referrer")
.in("prospect")
.as("prospect")
.select("referral", "referrer", "prospect")
.toList()
你也不需要 next
因为你已经有了 toList
.
最后,我不会使用 as
和 select
,而是查看 path
步骤。
g.V(business.id) //business
.in("opportunity")
.out("referredBy")
.in("prospect")
.path()
.toList()