graph-databases - Gremlin:按查询从组中返回 valueMap/projected 属性
问题描述
假设我有两种类型的顶点,父母和孩子。我希望能够查询所有父顶点,并让所有子节点按关联的父节点以及每个子节点的属性进行分组。假设父母有多个孩子,孩子只能有 1 个父母。Parent 将始终具有父标签,但子标签可以具有各种不同的标签。
所以现在如果我这样做
g.V().hasLabel('parent').group().by(__.inE().outV()).toList()
我回来了:
[{v[Child_A]: [v[Parent_A]], v[Child_B]: [v[Parent_B]]}]
我想要的是相反的层次结构以及孩子的价值图/投影值,例如:
[Parent_A: Child_A1: {properties}, Child_A2: {properties}], [Parent_B: Child_B1: {properties]
如果这很重要,请使用带有 Neptune 的 python gremlin。
解决方案
如果我了解您想要的输出,我认为这就是您要寻找的:
g.V().hasLabel('parent').group()
.by(__.values('name'))
.by(__.in_().group().by(__.values('name')).by(__.valueMap(true)))
推荐阅读
- python - 如何连接两个行数不等的数据框
- r - 计算直线和曲线之间的面积
- java - Spring ScriptUtils:使用 MySql 导致测试永远冻结
- php - 连接失败:SQLSTATE [HY000]:一般错误:1366 整数值不正确
- jsfiddle - 在 Fiddle 中开始使用 Owl Carousel
- delphi - FormShow 在嵌入式表单上被调用两次
- java - 使用java流的不兼容类型错误
- mysql - 如何比较不同列中的两个字符串并创建新列?
- hive - 如何在 hive 中按月和日对表进行分区
- react-native - 如何使用 React Native 将视频上传到 s3 存储桶