gremlin - как обновить свойство вершины с помощью свойства другой вершины

данные тестирования:

      vertex A has property 'a' value '1'
vertex B has outEdge  'e' to A
vertex B had property 'b' value '2'

как мне обновить 'a' до значения 'b' в этом случае '2'?

Я пробовал это, но не работал

      g.V().hasLabel('A').property('a', inE('e').outV().project('b').by('b').unfold())

1 ответ

Решение

Построение графика с помощью ...

      gremlin> g.addV('A').property('a','1').as('a').
   ......1>   addV('B').property('b','2').as('b').
   ......2>   addE('e').from('b').to('a')

gremlin> g.V().valueMap()
==>[a:[1]]
==>[b:[2]]

Вы можете использовать значения из A для обновления B следующим образом (это один из способов написать запрос, есть альтернативные способы)

      gremlin> g.V().hasLabel('B').as('b').V().hasLabel('A').property('a',select('b').values('b'))
==>v[42790]

gremlin> g.V().valueMap()
==>[a:[2]]
==>[b:[2]]              
Другие вопросы по тегам