私はneo4jの1:多くの関係表示の問題を解決しようとしています。それは以下のように表示を返し Neo4jは1対多の関係で1つのノードのみを表示します
LOAD CSV WITH HEADERS FROM 'file:///FTTH_sample.csv' AS line
CREATE(:ftthsample
{child_id:line.child,
desc:line.desc,
type:line.type,
parent_id:line.parent});
//Relations
match (child:ftthsample),(parent:ftthsample)
where child.child_id=parent.parent_id
create (child)-[:test]->(parent)
//Query:
MATCH (child)-[childrel:test*]-(elem)-[parentrel:test*]->(parent)
WHERE elem.desc='FDP'
RETURN child,childrel,elem,parentrel
child,desc,type,parent
1,PGD,Exchange,0
2,MSE 1,MSE,1
3,MSE 2,MSE,1
4,MSE 3,MSE,1
5,MSE 4,MSE,1
6,BRAS 1,BRAS,2
6,BRAS 1,BRAS,3
7,BRAS 2,BRAS,4
7,BRAS 2,BRAS,5
10,NPE 1,NPE,6
11,NPE 2,NPE,7
12,OLT,OLT,10
12,OLT,OLT,11
13,FDC,FDC,12
14,FDP,FDP,13
15,Cust 1,Customer,14
16,Cust 2,Customer,14
17,Cust 3,Customer,14
以下のように私のデータセットがあります。
私は重複ノードが1として表示させたいです。 Neo4Jの初心者。専門家の誰もが助けてくれますか?
ありがとうございます、 –
あなたをバグしていただきありがとうございます。サンプルとは異なり、私の実際のデータセットは私のIDを持っているか、または結合カラムは文字列値です..そして、いくつかの子の値は親を持っているかもしれないし、持たないかもしれません。 これは私にエラーが表示される理由です。 "child_idのヌルプロパティ値を使用してノードをマージできません" ここで提供した解決方法を試しましたが、まだエラーをスローしています... http://stackoverflow.com/questions/40794877/how-to-include-null-values-using-neo4j-merge あなたは確認してください。もう一度バグして申し訳ありません。 –
あなたはマージするためにいくつかのユニークな値を持つ必要があります。データがもともとリレーショナルデータベースから来たのであれば、通常はマージに使用する主キーIDがいくつかあります。一意のプライマリキーがなければ、これらのノードをマージすることはできません。これは、どのノードが一意であるかを判断する方法がないためです。私はあなたがエラーの周りにあなたを取得するかどうかはわかりませんが、child_idだけでなく、すべてのプロパティをマージすることができます。 – InverseFalcon