我正在使用带有 GremlinAPI 的 CosmosDB,即使 CosmosDB 不支持数学步骤,我也想执行简单的计算。
想象一下,我有一个具有属性 Age 的顶点“Person”,它可以与另一个也具有属性 Age 的顶点“Pet”有一条边“Owns”。我想知道某个人是否有一只比这个人年轻但不超过 10 岁的猫。
查询(我知道这只是其中的一部分,但这是我的问题所在)
g.V().hasLabel("Person").has("Name", "Jonathan Q. Arbuckle").as("owner").values("age").inject(-10).sum().as("minAge").select("owner")
返回一个空结果,但
g.V().hasLabel("Person").has("Name", "Jonathan Q. Arbuckle").as("owner").values("age").inject(-10).as("minAge").select("owner")
返回选定的所有者。似乎如果我在查询中执行 sum() 或 count(),那么我不能再执行 'select("owner")' 了。
我不明白这种行为。我应该怎么做才能执行“选择(“所有者”)”并能够根据宠物的年龄过滤宠物。
还有其他方法可以编写此查询吗?
先感谢您