CosmosDB图:如何使用gremlin更新具有多个值的顶点的属性值?

时间:2017-07-07 09:14:03

标签: azure-cosmosdb gremlin

假设我的查询是:

g.addV('employee').property('id', 'john').property('country', 'USA').property('country', 'India')

增加了属性国家的两个值,即美国和印度。

[
 {
  "id":"john",
  "label":"employee",
  "type":"vertex",
  "properties":{
                "country":[
                          {
                           "id":"5dc2aaf6-cb11-4d4a-a2ce-e5fe79d28c80",
                           "value":"USA"
                          },
                          {
                           "id":"fcf4baf6-b4d5-45a3-a4ba-83a859806aef",
                           "value":"India"
                          }
                          ]
                }
 }
]

现在我想更改一个现有值。例如' India' to ' China'

对此会有什么疑问?

3 个答案:

答案 0 :(得分:3)

在单个查询中,它只是:

g.V().has('id', 'john').
  sideEffect(properties('country').hasValue('India').drop()).
  property(list, 'country', 'China')

答案 1 :(得分:2)

我们可以首先删除'India'值,然后添加'China'。我用以下查询测试它,它可以正常工作。

g.V().has('id', 'john').properties('country').hasValue('India').drop()
g.V().has('id', 'john').property(list, 'country', 'China')

答案 2 :(得分:0)

g.V()。has('employee','id','john')。property('country','China')