【问题标题】:Gremlin to retrieve multiple properties based on its metapropertiesGremlin 根据其元属性检索多个属性
【发布时间】:2021-06-21 11:18:59
【问题描述】:

我需要根据几个属性的元属性来检索顶点。

p.addV('v01').
    property(list, 'p01', 'p01value01', 'modified_by', 'user01', 'modified_date', '12/12/9999')
    property(list, 'p02', 'p02value01', 'modified_by', 'user01', 'modified_date', '12/12/2021')

p.addV('v01').
    property(list, 'p01', 'p01value02', 'modified_by', 'user01', 'modified_date', '12/12/2021')
    property(list, 'p02', 'p02value02', 'modified_by', 'user01', 'modified_date', '12/12/9999')

如何选择元属性所在的属性(modified_by == '12/12/9999')

【问题讨论】:

    标签: groovy gremlin janusgraph


    【解决方案1】:

    您可以访问元属性,如下所示。 where 步骤过滤掉任何没有匹配属性的顶点。如果您想返回属性而不是顶点,您可以根据需要以任何方式修改此查询

    g.V().where(properties().properties('modified_date').hasValue('12/12/9999'))
    

    如果你想要这些属性,你可以移动 where 步骤。

    g.V().properties().where(properties('modified_date').hasValue('12/12/9999')))
    

    【讨论】:

    • 嗨,Kelvin,当我使用 gV().properties().where(properties('modified_date').hasValue('12/12/9999')) 时,有没有办法使结果变平)
    • “结果平平”是什么意思?你能举个例子说明你需要什么吗?
    • 当使用 "where" 时,结果将是 ==>vp[p01-> p01value01] ==>vp[p02-> p01value02] 我怎样才能把它格式化成这样:{props ={p01=[p01value01], p02=[p01value02]}, id=16400, label=profile} 原因是因为我在flask中使用gremlin-python,我想通过jsonify来解析
    • 我在您的博客中找到了答案!谢谢! .group().by(key).by(value)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-15
    • 1970-01-01
    • 2017-04-28
    • 1970-01-01
    • 1970-01-01
    • 2022-09-23
    • 1970-01-01
    相关资源
    最近更新 更多