OrientDB:特定のクラスの直接隣接頂点がないすべての頂点を見つけます
-
28-10-2019 - |
質問
OrientDBのクエリ言語を使用して、クラスター内のすべての頂点を見つけるにはどうすればよいですか a
クラスの頂点で終了する発信エッジがない b
(つまり、クラスの直接隣接頂点はありません b
)?他の発信エッジがあるかどうかは関係ありません。
解決
クラスターAをマッピングしている場合は、できることができます。
select from A where not( out.in.@class in ['b'] )
つまり、レコード(エッジとして)の「out」プロパティを横断し、次に「in」プロパティ(頂点)を越えてから、クラス名(@class)を取得します。 「out.in.@class」がクラス名のコレクションを返すため、=(等しい)の代わりにin operatorを使用しました。
クラスが必要であり、クラスターを使用する必要がある場合は、クラスターを使用してください。Syntax:
select from cluster:A where not( out.in.@class in ['b'] )
最新の1.0RC8-SNAPSHOTとWorksに対してテストしました。
所属していません StackOverflow