我在OrientDB中有一个类似目录的树结构:
节点(名= 'A') - >连接 - >节点(名= 'B') - >连接 - >节点(名= 'C')
create class Node extends V
create class Connection extends E
let a = create vertex Node set name = 'a'
let b = create vertex Node set name = 'b'
create edge Connection from $a to $b
let c = create vertex Node set name = 'c'
create edge Connection from $b to $c
如果我知道路径'a' - >'b' - >'c',我该如何选择Node(name ='c')?
请记住,所有名称在不同级别的层次结构中可能相同:例如,而不是'a','b','c',它可以是'a','a','a',但所有节点都是不同。
答案 0 :(得分:2)
试
SELECT expand(o) from
(MATCH
{
class: Node,
where: (name='a')
}
.out('Connection')
.out('Connection')
{
as: o
}
RETURN o)
或没有MATCH
select expand(out('Connection').out('Connection')) from Node where name='a'
这是你在寻找什么?