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

Jag*_*odi 2 gremlin azure-cosmosdb

根据cosmosDB图形文档,一个顶点可以具有带有多个值的属性。 https://docs.microsoft.com/zh-cn/azure/cosmos-db/gremlin-support

因此,在添加顶点的过程中,如果我们为一个属性定义了多个值,则会添加它。

假设我的查询是:

g.addV('employee').property('id', 'john').property('country', 'USA').property('country', 'India')
Run Code Online (Sandbox Code Playgroud)

结果是:

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

但是在更新顶点时,如果我们更新具有多个值的属性。

查询是:

g.V('john').property('country', 'USA').property('country', 'India').property('country', 'China')
Run Code Online (Sandbox Code Playgroud)

结果是:

[{"id":"john","label":"employee","type":"vertex","properties":{"country":
    [{"id":"7e5d9847-31e5-4a59-82f9-b78e744420a1","value":"China"}]}}]
Run Code Online (Sandbox Code Playgroud)

如何用多个值更新此属性?

Jes*_*ter 5

您缺少list允许您添加其他属性的关键字。

我建议阅读VertexProperties上的Tinkerpop文档

g.V('john').property(list, 'country', 'USA')
   .property(list, 'country', 'India')
   .property(list, 'country', 'China')
Run Code Online (Sandbox Code Playgroud)