以下Titan示例图的查询不会产生我的预期:
onStart()
它给了我两倍的cerberus顶点,而不是g.V.has("age", T.lte,1000).as('young').out('battled').has("name","cerberus").copySplit(
_().back('young'),
_()
).exhaustMerge
和hercules
似乎cerberus
之后后退不起作用。有没有解决这个限制的方法?
答案 0 :(得分:1)
已经在Gremlin用户邮件列表上回答了,但我们再来一次:
这两个替代方案仍然适用于Gremlin3(语法略有不同,但概念相同):
gremlin> g.V().has("age", T.lte, 1000).as("young").out("battled").has("name", "cerberus").as("monster").select()
==>[young:v[24], monster:v[44]]
或者:
gremlin> g.V().has("age", T.lte, 1000).out("battled").has("name", "cerberus").path()
==>[v[24], v[44]]