2016-09-16 69 views
1

我有以下图表:如何跨越多个OrientDB顶点

enter image description here

Class A Vertex = [11, 21, 51, 31, 28] 
Class B Vertex = [10, 14, 4, 0] 
Class C Vertex = [33, 45, 35, 37] 

我有一个查询(Q)A级的该过滤器顶点:

SELECT FROM A WHERE condition 

比方说,结果是[31,28]

现在我需要筛选是RELAT B类的所有顶点ed(必须是传出边缘,可能是或可能不是直接关系)到查询(Q)结果中的至少一个顶点。

结果查询应返回[4,0],因为如果你从这些顶点遍历,你会得到期望的顶点的至少一个(31或28)

我不知道如何创建正确的查询以及在OrientDB中最有效的方法是什么。谢谢。

+0

你好,请你添加一个样本数据,用你所需要的例子吗?谢谢 –

+0

我已经编辑过这个问题。 – diugalde

回答

2
select from (traverse in() from (select from A where num in [31,28])) where @class='B' 

替代品select from A where num in [31,28]您查询来获取这些结果

+0

非常感谢,这正是我所期待的。 – diugalde