2017-03-28 10 views
0

ユーザーは、UserIDがIDに対して自己参照されているノードです。自己のノード深度カウントをカウントするneo4jの参照先

存在する深度の総数のカウントをチェックする方法がIDに指定されている場合。

ユーザーサンプル:

enter image description here

私はIDとして1を与え、その後、私は深さの1- maxmimumレベルを取得する必要がある場合、これはユーザノードに存在するノードである> 3 - > 7> 9すなわち4.

+3

お試しいただいた内容を表示してください。深さの合計数はどういう意味ですか? –

+0

これまでのグラフの内容を説明できますか?あなたは私たちにテーブルを与えましたが、ノードはリレーションシップに関連付けられていますか、またはそれらは未接続で、プロパティ値を使用して参加していますか?グラフデータベースの場合、リレーショナルDBから外部キーを模倣するのではなく、ノードをリレーションシップに接続する必要があります。 – InverseFalcon

答えて

0

あなたが持っていると仮定しましょう:ユーザーノードには、次のものがあります。テーブルに基づいてユーザー間のCHILD関係。

このクエリは、指定された:Userノードから開始し、ツリー内の最大深度:CHILD関係を提供する必要があります。すべてのパスの最大サイズを見つけ、それを返し、MATCHに子関係、及びノードへの各パスの各結果の行のための関係の結果のリストから:我々は、可変長を使用している

MATCH (u:User{ID:1})-[r:CHILD*]->() 
RETURN max(size(r))