java - Java 中的 Gremlin group By

标签 java graph-databases gremlin

假设我有这个图表:

     +--own--> [made=Renault] --------------is-------------+
[name=Joan]                                                v
     +--own--> [made=Citroen] --is--> [type=Gas]      [type=Diesel]
     +--own--> [made=Peugeot] --is--> [type=Gas]           ^
[name=Jacky] --own--> [made=Opel] ------------is-----------+

现在我想生成每个拥有的类型燃料的列表。

| Person |  Type  |
+--------+--------+  
| Joan   | Gas    |
| Joan   | Diesel |
| Jacky  | Diesel |

在 SQL 中,我可能会在类型名称上使用 ORDER BY,但我不明白在 Gremlin 中如何对它们进行分组?

最佳答案

table pipe做这个。我为您的模型加载了一个名为“_stp_type”的索引属性,其中包含 Joan 和 Jacky 的值“Person”。我还为它们提供了一个“Name”属性。

g.idx('entities')[['_stp_type':'Person']].Name.as('Owner').back(1).out('Owns').Type.as('Type').table().cap().next().unique()

返回:

[
    [
        Jacky,
         Diesel
    ],
     [
        Joan,
         Diesel
    ],
     [
        Joan,
         Gas
    ]
]

需要独特的方法(在表类上)来防止 Joan 为每辆汽油动力车辆拥有单独的条目。

关于java - Java 中的 Gremlin group By,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24087414/

相关文章:

graph-databases - 图数据库 : Node as a property of a relationship

groovy - Gremlin-仅添加不存在的顶点

java - 为什么java Native Memory Tracking中的内部内存在增加

javax.servlet.http.HttpServletResponse SC_TOO_MANY_REQUESTS

java - 使用 ant 脚本压缩和解压缩,同时添加一些属性

java - 将 .der 文件中的私钥导出为 PKCS#1

traversal - ArangoDB:通过图遍历聚合计数

ruby-on-rails - Rails 3 和图形数据库

graph - 如何在 Gremlin Server ( Titan 1.0) 中更新 Vertex 的值

python - 如何使用 python 为 janusgraph 设置模式以进行批量加载