[英]neo4j cypher count relations between same type of nodes
我在圖數據庫中太新了,在從這樣的模型中獲取數據時遇到問題。
我正在嘗試計算User1和與user1在同一組中的所有其他用戶之間的常見喜歡。 這是我要為User1獲得的結果:
User , Count, Drinks
User3, 2, [ Cola, Beer ]
User2, 1, [ Cola ]
User5, 1, [ Tea ]
User4, 0, [ ]
User6, 0, [ ]
這似乎很容易完成,但對我而言卻不是。
我可以獲取用戶,並且可以統計與之有關系的用戶,但不能與無關系的用戶數。 請任何人可以幫助我嗎? 提前致謝!
我提出的解決方案具有以下邏輯:
這基於以下測試圖:
http://console.neo4j.org/r/xc3cqt
查詢:
MATCH (u:User { id:1 })
MATCH (o:User)
WHERE o <> u
OPTIONAL MATCH (u)-[r:LIKES]->(d)<-[:LIKES]-(o)
RETURN o.id, count(r) as c, collect(DISTINCT (d.name)) AS drink
您提供的圖形的結果:
o.id c drink
2 1 [Cola]
5 1 [Tea]
4 0 []
3 2 [Beer, Cola]
6 0 []
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.