如何从顶点获得具有边属性最大值的边

时间:2017-02-15 13:06:04

标签: gremlin tinkerpop tinkerpop3

场景:查找具有最佳员工Vertex经验的工作,该工作具有优势WorkedAs且具有边缘属性workedForYears,该工作具有多年的工作经验。

我用过

g.V().has('EmployeeId','1234').outE('WorkedAs').values('workedForYears').max()

这会给我一个整数。我有什么方法可以获得优势吗?

1 个答案:

答案 0 :(得分:2)

您可以使用order().by().limit(1)模式而不是max(),因此您不会将遍历中的项转换为整数。

g.V().has('EmployeeId','1234').outE('WorkedAs').as('e') \
     .order().by('workedForYears', decr).limit(1).select('e')

请注意,我使用as()步骤(As Step docs)来标记Gremlin遍历中的特定点。然后在进行其他处理后,您可以使用select()跳回到该特定位置。