0

私はクエリを暗号化し、初心者です。クエリしたいのは次のとおりです

データ挿入

CREATE ( USER{ talk_id : 1 , phone_num : "1" } );  //[1]
CREATE ( USER{ talk_id : 2 , phone_num : "2" } );  //[2]
CREATE ( USER{ talk_id : 3 , phone_num : "3" } );  //[3]
CREATE ( USER{ talk_id : 4 , phone_num : "4" } );  //[4]


CREATE ( USER{ talk_id : 5 , phone_num : "5" } ); //[5]
CREATE ( USER{ talk_id : 6 , phone_num : "6" } ); //[6]
CREATE ( USER{ talk_id : 7 , phone_num : "7" } ); //[7]

START s=node(1) , d=node(2) CREATE s-[r:FRIEND]->d RETURN r;
START s=node(1) , d=node(3) CREATE s-[r:FRIEND]->d RETURN r;
START s=node(1) , d=node(4) CREATE s-[r:FRIEND]->d RETURN r;

START s=node(2) , d=node(7) CREATE s-[r:FRIEND]->d RETURN r;

質問する

クエリ 1:

START s=node(1) match s-[r]->f return f;

結果:

+----------------------------------+
| f                                |
+----------------------------------+
| Node[2]{talk_id:2,phone_num:"2"} |
| Node[3]{talk_id:3,phone_num:"3"} |
| Node[4]{talk_id:4,phone_num:"4"} |
+----------------------------------+

クエリ 2

start s = node( 2, 3 , 4 ) , s1 = node( 2 , 3 , 4 ) match p=s-[r]->s1 return s1;

s と交差 s1 の関係ノードが必要です。

結果:

+----------------------------------+
| s                                | 
+----------------------------------+
| Node[3]{talk_id:3,phone_num:"3"} |
+----------------------------------+
1 row

2つを1つのクエリと結果に結合したい

元 )

+----------------------------------+
| f                                |
+----------------------------------+
| Node[2]{talk_id:2,phone_num:"2"} |
| Node[3]{talk_id:3,phone_num:"3"} |
| Node[4]{talk_id:4,phone_num:"4"} |
| Node[3]{talk_id:3,phone_num:"3"} |
+----------------------------------+

どうすればいいの?サブクエリと同じように RDBMS

タンクユー ^^;

4

1 に答える 1

1

あなたの質問を正しく理解できたかどうかわかりません。それに基づいて、あなたが求めている2つのケースを推測できます

1) 最初のクエリの結果を 2 番目のクエリの開始点として使用し、それを 1 つのクエリに結合したい場合:

start s=node(1)
match s-[r1]->()-[r2]->f
return f

注: のpath後の式matchは、任意の長さになる可能性があります。

それを分割して、サブクエリを連鎖させることもできますwith

start s=node(1)
match s-[r1]->t
with t
match t-[r2]->f
return f

2) 2 つの異なるクエリの結果を 1 つの結果セットに結合したい。この場合UNION、Neo4j 2.0 で導入されたキーワードを使用するか、クライアント側でこれを行う必要があります。

于 2013-09-01T14:43:18.120 に答える