Gremlin-如何根据边缘过滤结果';谁的财产?

Gremlin-如何根据边缘过滤结果';谁的财产?,gremlin,Gremlin,我们有“用户”记录,与其他用户的关系有“朋友”优势。我想通过向“friend”边添加isDeleted属性来软删除关系,并根据该属性过滤结果。我们如何查询该案例?添加4个用户: g.addV('users').property(id,'user1').addV('users').property(id,'user2').addV('users').property(id,'user3').addV('users').property(id,'user4') 将好友关系从user1添加到user

我们有“用户”记录,与其他用户的关系有“朋友”优势。我想通过向“friend”边添加isDeleted属性来软删除关系,并根据该属性过滤结果。我们如何查询该案例?

添加4个用户:

g.addV('users').property(id,'user1').addV('users').property(id,'user2').addV('users').property(id,'user3').addV('users').property(id,'user4')
将好友关系从user1添加到user2、user3和user4

g.V('user1').addE('Friend').to(V('user2')).next()
g.V('user1').addE('Friend').to(V('user3')).next()
g.V('user1').addE('Friend').to(V('user4')).next()
检查具有不包含isDeleted标志的边的所有好友

gremlin> g.V('user1').outE().hasNot('isDeleted').inV()
==>v[user2]
==>v[user3]
==>v[user4]
将user1和user2之间的边标记为已删除

g.V('user1').outE().as('myEdge').inV().has(id,'user2').select('myEdge').property('isDeleted',true)
为user1获取已删除的好友,边缘带有isDeleted标志true

gremlin> g.V('user1').outE().has('isDeleted',true).inV()
==>v[user2]
获取user1的当前好友,不带isDeleted标志

gremlin> g.V('user1').outE().hasNot('isDeleted').inV()
==>v[user3]
==>v[user4]

巴鲁·维亚马卡拉,我试试这个。谢谢你的回答。(非常感谢。)NP我也是小精灵的初学者。我很想知道你是怎么做的我试过了而且成功了。帮助很大。谢谢你的帮助。