Gremlin CosmosDB尝试从节点列表中查询节点列表并同时返回

时间:2019-07-30 15:21:22

标签: azure-cosmosdb gremlin tinkerpop3

graph image

enter code here
(Query to find owner)
.inE().hasLabel('OwnedBy').outV().not(inE().hasLabel('AssignedTo').has('Status', 'InUse'))
.not(
inE()
.hasLabel('AssignedTo')
.has('Status', 'InUse')
).as('cards')

.inE()
.hasLabel('AssignedTo')
.has('Status', 'FutureUse')
.as('OwnedByRequestEdges')

.outV()
.as('OwnedByRequests')

.Select('card', 'OwnedByRequests', 'OwnedByRequestEdges', 'Owner')

我真的希望它能给我卡片清单和请求清单。

我的用户可以有多张卡,而卡可以有多个将来的预订。

1 个答案:

答案 0 :(得分:1)

为了在遍历期间存储所有值,应使用“存储”而不是“作为”。

由于您希望“选择”运行一次,因此需要在其之前添加fold()。

有一个多余的“非”过滤器(相同的过滤器)。

(Query to find owner)
.inE().hasLabel('OwnedBy').outV()
.not(inE().hasLabel('AssignedTo').has('Status','InUse'))
.store('Cards')
.inE().hasLabel('AssignedTo').has('Status', 'FutureUse').outV()
.store('OwnedByRequests')
.fold()
.select('Cards', 'OwnedByRequests')