将边缘与 属性 结合的 Gremlin 查询
Gremlin query to combine edge with property
我有一个数据模式,用户可以在其中评论产品。 user
和product
是顶点,reviews
是users
和products
之间的MANY2MANY关系。 reviews
具有标题和 body 等边缘属性。
我想编写查询以获取产品的所有评论,以及撰写评论的用户。我可以使用以下方法获取评论,但我不知道如何添加所有用户属性。
g.({product}).inE("reviews").values()
如何获取每个评论的用户信息?
你可以这样做:
l = g.V(pvid). // start with a product vertex id
inE("reviews").as("r"). // label the review edges
outV().as("u"). // label the users
select("r", "u").by(valueMap()). // properties map
toList() // iterate traversal into a list
这将 return 地图列表。每个映射将有 2 个键,r
和 u
,对应于 select("r", "u")
步骤。然后地图中 r
的值是评论的属性。同样,地图中 u
的值是用户的属性。
相关文档
我有一个数据模式,用户可以在其中评论产品。 user
和product
是顶点,reviews
是users
和products
之间的MANY2MANY关系。 reviews
具有标题和 body 等边缘属性。
我想编写查询以获取产品的所有评论,以及撰写评论的用户。我可以使用以下方法获取评论,但我不知道如何添加所有用户属性。
g.({product}).inE("reviews").values()
如何获取每个评论的用户信息?
你可以这样做:
l = g.V(pvid). // start with a product vertex id
inE("reviews").as("r"). // label the review edges
outV().as("u"). // label the users
select("r", "u").by(valueMap()). // properties map
toList() // iterate traversal into a list
这将 return 地图列表。每个映射将有 2 个键,r
和 u
,对应于 select("r", "u")
步骤。然后地图中 r
的值是评论的属性。同样,地图中 u
的值是用户的属性。
相关文档