我需要返回该组中的一些群组和人员,如下所示:A组—–人A—–人B.—–人C.
B组—–人D.—–人E—–人F.我怎么能用gremlin做到这一点。 …
在Gremlin中包含一个带有问题的示例图表总是有帮助的,最好是将其粘贴到Gremlin控制台上,如下所示:
g.addV('group').property('name','Group A').as('ga'). addV('group').property('name','Group B').as('gb'). addV('person').property('name','Person A').as('pa'). addV('person').property('name','Person B').as('pb'). addV('person').property('name','Person C').as('pc'). addV('person').property('name','Person D').as('pd'). addV('person').property('name','Person E').as('pe'). addV('person').property('name','Person F').as('pf'). addE('contains').from('ga').to('pa'). addE('contains').from('ga').to('pb'). addE('contains').from('ga').to('pc'). addE('contains').from('gb').to('pd'). addE('contains').from('gb').to('pe'). addE('contains').from('gb').to('pf').iterate()
您的问题的解决方案是使用 group() 步:
group()
gremlin> g.V().has('group', 'name', within('Group A','Group B')). ......1> group(). ......2> by('name'). ......3> by(out('contains').values('name').fold()) ==>[Group B:[Person D,Person E,Person F],Group A:[Person A,Person B,Person C]]