0
こんにちは、上のグラフのために 、以下のシナリオのCYPHERクエリでお願いします。
1)関係R1をノードR1に接続したすべてのノードを返します。クエリの出力としてS1、S2、S3を取得したい
2)残りのノードR2、R3などから、直接関係が追加されていない場合は、ボトムアップノードその後、ノードR5
すべてのノードが同じタイプのものであり、名前がR1である場合に
こんにちは、上のグラフのために 、以下のシナリオのCYPHERクエリでお願いします。
1)関係R1をノードR1に接続したすべてのノードを返します。クエリの出力としてS1、S2、S3を取得したい
2)残りのノードR2、R3などから、直接関係が追加されていない場合は、ボトムアップノードその後、ノードR5
すべてのノードが同じタイプのものであり、名前がR1である場合に
あなたのグラフは、ノードラベル(すなわち種類)が欠落している、あなたの入力を感謝... S5からS1、S2など、 : 1)
MATCH (node:Node)-[:R1]->(x) where node.name ="R1"
RETURN x
これは、接続されているすべてのノードdをR1という名前のノードにR1:
2)あなたの質問は、R5が与えられたすべてのSノードを見つけようとしていますか? R5
MATCH(node:Node)-[:*1-7]-(node-s:Node) where node.name="R5" AND node-s.name =~ "S.*"
RETURN (node-s)
[:*1-7]
与え は、私は以下の、のNeo4jする新たなんだ
...あなたのノードがラベルを持っていた場合、これは、容易になるだろう7
に長さ1のパスを何を意味するのか、私です試してみました。すべてのRNodeとSNodeにラベルが付いています。しかし正しいノードを取得しないでください。MATCH(:RNode {name: 'R1'}) - (SNode) RETURN(SNode) – j2eeuser
あなたの例では、SNodeは変数名です。 SNodesが他のノードと異なるタイプの場合は、ここにラベルを付ける必要があります。そうしないと、R1に接続されているすべてのノードで一致します。 Cypherのマニュアルを読んだり、ブラウザアプリでチュートリアルを行ったりして、Cypherの構文に慣れ親しむことができます。 – InverseFalcon
これは、MATCH(:RNode {name: 'R1'}) - [*] - (n:S1)return n – j2eeuser