首页 > 解决方案 > Gremlin:根据两个属性值的比较选择顶点

问题描述

假设我有以下 Gremlin 图:

g.addV('test1').property('pkey', 100).property('v1', 100).property('v2', 150)
g.addV('test1').property('pkey', 100).property('v1', 100).property('v2', 75)

我想查询属性值 v1 大于属性值 v2 的所有“test1”标记顶点。如何在 Gremlin 中实现这一目标?

标签: gremlinazure-cosmosdb-gremlinapi

解决方案


您可以where()以这种方式使用 step :

gremlin> g.addV('test1').property('pkey', 100).property('v1', 100).property('v2', 150)
==>v[0]
gremlin> g.addV('test1').property('pkey', 100).property('v1', 100).property('v2', 75)
==>v[4]
gremlin> g.V().hasLabel('test1').as('a').where('a',gt('a')).by('v1').by('v2')
==>v[4]
gremlin> g.V().hasLabel('test1').as('a').where(gt('a')).by('v1').by('v2')
==>v[4]

推荐阅读