1

次のグラフがあります。

ここに画像の説明を入力

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

クラス A の頂点をフィルター処理するクエリ (Q) があります。

SELECT FROM A WHERE condition

結果が [31, 28] だとしましょう

ここで、クエリ (Q) の結果内の少なくとも 1 つの頂点に関連するクラス B のすべての頂点 (発信エッジである必要があり、直接的な関係である場合とそうでない場合があります) をフィルター処理する必要があります。

結果のクエリは [4, 0] を返す必要があります。これは、これらの頂点からトラバースすると、少なくとも 1 つの目的の頂点 (31 または 28) に到達するためです。

正しいクエリを作成する方法と、OrientDB でそれを行う最も効率的な方法がわかりません。ありがとうございました。

4

1 に答える 1