0

私は友人の提案をアプリ内で機能させようとしています.RDBMSのバックグラウンドからNeo4Jを学ぶのは刺激的でありながらイライラする時間でしたが、ここに行きます.

ユーザーの直接の友人を 2 人以上知っている人を表示できるようにする必要があります。つまり、添付のスクリーン ショットのグラフのように、ノード 6 と 4 を提供するサイファー クエリが必要です。

スクリーンショットはhttp://oi39.tinypic.com/j9yogi.jpgにあります)

私が髪を引き裂いているので、どんな助けでもいただければ幸いです。

4

3 に答える 3

3

Nicholas が指摘したように、Cypher を試してみると、とても簡単です。

http://console.neo4j.org/r/kt5hdを参照してください。

START n=node(1) 
MATCH n-[r:KNOWS*2]->f 
WITH count(r) AS count, f 
WHERE count>=2 
RETURN f
于 2013-11-19T03:24:14.727 に答える
0

@Luannesの回答は、現在の友達も返しますが、これは実際には友達の提案ではありません。これを使って。

            MATCH (joe { name: 'Joe' })-[:knows*2..2]-(friend_of_friend)
            WHERE NOT (joe)-[:knows]-(friend_of_friend)
            RETURN friend_of_friend.name, COUNT(*)
            ORDER BY COUNT(*) DESC , friend_of_friend.name

Neo4j クックブックから http://neo4j.com/docs/stable/cypher-cookbook-friend-finding.html

于 2015-03-11T21:22:57.430 に答える