如何在边缘类之后停止遍历?
查询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
。
如何构建一个返回我需要的部分的查询?如果存在橙色路线,我希望返回整个图表。
我测试过:TRAVERSE inE(..), outE(...), bothE()
和WHILE $parent.$current.@class != "E13"
位它不起作用。
我已经看过https://stackoverflow.com/a/43776591/1194525,但如果我理解正确,可以在众所周知的井中使用MATCH。
答案 0 :(得分:0)
我知道如何在2个查询中执行此操作,但可以使用改进,例如:在1个查询中执行此操作。
步骤1:按所有“右”边缘遍历图形。
TRAVERSE bothE("Prequel", "Sequel"), bothV() FROM (
SELECT FROM Title WHERE title_id IN [12] )
第2步:从响应中获取所有顶点rid
(在客户端中)
第3步:根据上一次查询中的所有顶点rid
的“停止”边缘进行查询。
TRAVERSE bothE("Character"), bothV() FROM (
SELECT FROM Title WHERE title_id IN [12, 431, 432, 433, ...] )
MAXDEPTH 2
步骤4:合并客户端中的响应(顶点+边缘)。