2017-01-23 102 views
0

上下文: 我正在開展一項校友項目,以瞭解捐贈和參與之間的區別。 (參與=參加,出席活動,志願服務等)工作中的價值將來自於理解行爲夥伴所獲得的洞察力。如何將節點|類型按類型合併爲單個節點類型?

在下面的查詢中,我一直在有效地帶回「最大的消費者」,但是我想列出(n)校友和(a,b)禮品的名稱。有30種禮品類型適合(a,b)。

請讓我知道你的想法... Innosoljim

>//Who are Alumni that give the most? 
>>MATCH (n:Alumni)-[r:Supportfin]->(b) 
>>MATCH (n:Alumni)-[t:Gavefin]->(a) 
>>RETURN n,b,a LIMIT 1500 

感謝您的回答 - 讓我重申目標,爲清晰:我想整合(到n.Alumni)許多關係 - [給予|支持] - >獨特的節點(各種禮物),以便我可以獲得校友活動的報告(給予,支持,通過n.name圖形模型將校友節點放在每個獨特行爲的中心,支持,graddate,地址,學位,希臘生活等....)這有幫助嗎?

MATCH (a:Alumni)-[r:Supportfin|Gavefin]->(gift) 
RETURN a.name, collect(gift) 
ORDER BY (a)-[r:Supportfin|Gavefin]-> count(*) DESC 

像這樣的事情,也許雖然這是不工作(的SyntaxError)

+0

目前還不完全清楚你想要什麼。也許你可以提供給定子圖的期望輸出的例子? – InverseFalcon

回答

0

匹配校友的禮物既關係類型和返回:

MATCH (a:Alumni)-[r:r:Supportfin|Gavefin]->(gift) 
RETURN a.name, collect(gift) 

或者通過不同類型的關係,把它分解:

MATCH (a:Alumni) 
OPTIONAL MATCH (s)-[:Supportfin]->(sup_gift) 
OPTIONAL MATCH (a)-[:Gavefin]->(gave_gift) 
RETURN a.name, collect(DISTINCT sup_gift), collect(DISTINCT gave_gift) 

沒有適當的描述你的圖形模型和問題,這個問題很難回答。