【问题标题】:Gremlin - Neptune - How to return vertex set properties correctlyGremlin - Neptune - 如何正确返回顶点集属性
【发布时间】:2020-09-14 02:05:20
【问题描述】:

我有一个具有以下属性的顶点:

名称 - 类型 - 基数

prop_1 - 字符串 - 单个

prop_2 - 字符串 - 设置

当我返回上述顶点的值映射时,这些值没有以正确的格式返回。

  • 使用 valueMap().by(unfold()) 将 prop_1 作为单个字符串值正确返回,但仅返回 prop_2 的第一个元素,即字符串集合。
  • 简单地使用 valueMap() 将 prop_1 作为字符串数组返回,将 prop_2 的所有值作为字符串数组返回

我知道,如果我明确提到要展开的单基数属性,我可以获得我想要的结果,但是我们使用的 gremlin 查询是通用的(动态生成的)用于具有不同属性的不同顶点,而这些属性不能在返回语句中明确提及。

有没有办法以正确的数据类型表示返回要返回的单个和设置的 carinality 属性?

【问题讨论】:

    标签: amazon-web-services gremlin amazon-neptune


    【解决方案1】:

    你可以根据属性中值的数量来做。

    (这可能会导致与仅包含 1 个值的设置值不一致...)

    g.V().valueMap().by(choose(
          count(local).is(eq(1)),
          unfold()
          identity()
        ))
    

    示例https://gremlify.com/@noam621/b9

    【讨论】:

    • 有没有更好的方法?我使用 java 所以在解析它时会导致问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多