我在neo4j中創建了5個節點,如下所示。neo4j - 用互相計數的用戶建議
Node 1 {userid:1000, username: A, someOtherProperties...}
Node 2 {userid:2000, username: B, someOtherProperties...}
Node 3 {userid:3000, username: c, someOtherProperties...}
Node 4 {userid:4000, username: D, someOtherProperties...}
Node 5 {userid:5000, username: E, someOtherProperties...}
節點1與節點2 & 3,並與節點1,3連接的節點2連接,4
1 -> 2
1 -> 3
2 -> 1
2 -> 3
2 -> 4
3 -> 4
現在我想節點1的用戶建議,其含有的未連接的那些節點與 它自我與相互計數。我想要這樣的結果。
node id userid username mutual count
------- ------ -------- -------------
4 4000 D 2 (which is node 2 & 3)
5 5000 E 0
我曾嘗試密碼查詢,但我沒有得到成功。
你嘗試什麼查詢所有其他節點?你能分享一下嗎? – Luanne
謝謝@Luanne。我嘗試了以下查詢:START user = node:node_auto_index(「userid:*」),me = node:node_auto_index(userid ='92') WHERE user <> me WITH user MATCH pMutualFriends = me - [:friends ] - > mf < - [?: friends] -user RETURN user.userid,user.UserName,COUNT(pMutualFriends)As MutualCount Order by MutualCount desc;我忘了把'?'之前的關係,我已經糾正。我得到了我期望的結果,但我不確定。這是否正確? –
所以你正在尋找一個用戶U,找到朋友U的所有朋友和U的朋友連接到朋友的朋友的數量?不知道爲什麼E在你的例子中出現,因爲沒有朋友連接到E.也許我誤解了你的查詢的目的? – Luanne