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]]