Java 可选 - Gremlin 中的等效项

问题描述 投票:0回答:1

我想进行一个适用于元素的查询。但有时这个元素并不存在。所以查询应该根据需要创建它。就像 Java 中的Optional::orElseGet - 方法一样。

我的显式示例(“propertyWithMetaProps”是基数为“list”的属性):

g.V(id).properties("propertyWithMetaProps").hasValue(1).{{your answer to create a property with value 1 in case such property does not exist}}.property("key","value");

我在远程图表上。因此请记住,我无权访问实际的图形对象。

gremlin tinkerpop tinkerpop3
1个回答
0
投票

您可能需要使用

mergeV()
步骤进行调查:

g.mergeV([(T.id):'001', someprop:1]).    // creates vertex if not exist, matches if exist
    option(Merge.onCreate,[created:'2022-02-07']).  // creates new property if vertex not found
    option(Merge.onMatch,[updated:'2022-02-07']).   // creates new property if vertex found
    property('newprop',5)     // creates new property in either case

有关

mergeE()
mergeV()
步骤的详细信息可以在此处找到:https://tinkerpop.apache.org/docs/current/reference/#mergeedge-step

© www.soinside.com 2019 - 2024. All rights reserved.