2016-12-07 4 views
0

の行に列を区切るためにどのように、私は、データベース内の3人の関係を有するのNeo4j例えば

(0001)-[relation1]-(node3) 

(0001)-[relation2]-(node3) 

(0002)-[relation3]-(node3) 

私は0001、0002、およびそれらの共通の友人

MATCH(s1:Person{name:'0001'})-[f1]->(x),(s2:Person{name:'0002'})-[f2]-(x) return f1, f2 

しかし間、それらの関係を照会したいです2列の2行を返します

f1       f2        
relation1      relation3 
relation2      relation3 

結果を1列で3行にするにはどうすればよいですか?

relation1 
relation2 
relation3 

答えて

0

あなたが(COLLECT)、その後、一緒にコレクションを追加することができ、その後、UNWIND:

MATCH(s1:Person{name:'0001'})-[f1]->(x),(s2:Person{name:'0002'})-[f2]-(x) 
WITH COLLECT(DISTINCT f1) + COLLECT(DISTINCT f2) as rels 
UNWIND rels as rel 
RETURN rel