边后停止遍历(orientdb)

Stop traversing after edge (orientdb)

如何在边class后停止遍历?

查询 TRAVERSE bothE(), bothV() FROM ( SELECT FROM Title WHERE title_id IN [12] ) 的图形如下所示:

如果我写(对于蓝色图表):

TRAVERSE bothE("E14", "E5", "E6"), bothV() FROM ( SELECT FROM Title WHERE title_id IN [12] )

它没有给我 V 970

如何构建将 return 我需要的部分的查询?如果存在橙色路线,我希望对整个图表进行 returned。

我测试过:TRAVERSE inE(..), outE(...), bothE()WHILE $parent.$current.@class != "E13" 位不起作用。

我看过,但如果我没理解错的话,MATCH可以用在一个众所周知的井

我知道如何在 2 个查询中执行此操作,但可以使用改进,例如:在 1 个查询中执行此操作。

第 1 步:通过所有 "right" 条边遍历图形。

TRAVERSE bothE("Prequel", "Sequel"), bothV() FROM (
  SELECT FROM Title WHERE title_id IN [12] )

第 2 步:从响应中获取所有顶点 rid(在客户端中)

第 3 步:通过 "stop" 条边查询先前查询中的所有顶点 rid

TRAVERSE bothE("Character"), bothV() FROM (
  SELECT FROM Title WHERE title_id IN [12, 431, 432, 433, ...] )
  MAXDEPTH 2

第 4 步:在客户端合并响应(顶点 + 边)。