特定のラベルタイプのすべてのノードを取得しようとしています。私はそれらのラベルにすべて同じサフィックスを持つ複数のグラフのルーツを持っています。たとえば、私は3つのノードがすべてラベルの末尾にtreeroot
を持っています。だから、私はcompanytreeroot
、buildingtreeroot
、nd employeetreeroot
を3つの別個のノードに対して3つの有効なラベルとして持つかもしれません。どのようにラベルにそのパターンがあるすべてのノードを取得できますか?neo4jにstringを含むすべてのラベルを見つける方法
は、私が試した:
match (n) where '.*treeroot' in labels(n) return n
と
match (n) where 'treeroot' in labels(n) return n
が、両方が空のセットを返す...
わからない場合は、しかし、ノードは、マルチ標識することができます。これが空文字列マッチングではなく、一度に複数の類似ラベルにまたがってノードを取得する必要がある場合は、これらのノードにスーパーラベルとしてラベルを追加することを検討してください。 treerootラベル(companytreeroot、buildingtreeroot、employeetreeroot)を持つすべてのノードに:TreeRootラベルを追加し、TreeRootをこれらのラベルの新しいノードに追加するようにします。そうすれば、グラフスキャン全体を実行するよりも効率的にクエリを実行できます。 – InverseFalcon
これらの一致は完全な文字列をチェックするだけです。 @ InverseFalconの答えが最も効率的です。 1。 –