0
我遇到了一個問題,我有我的圖形構造是這樣的:繼承財產 - 的Neo4j
A
/ \
B C
/\ /\
D E F G
我的所有節點都是Object類型:即匹配( N:對象) 我創造了這個圖形只有一個關係(父母和子女) 即(A)-[:child]->(B)
,(A)-[:child]->(C)
,(B)-[r:child]->D
,等等,直到節點G
我在每個節點上定義的屬性稱爲:levelID
一些的節點可能沒有這個levelID。沒有levelID的節點應該從其父節點繼承。
現在,當我運行暗號(假設C和G不具有levelID):
MATCH (n1:Object)-[:child]->(n2:Object)
return n2.id as id,
CASE
WHEN n2.levelId is null
THEN n1.levelId //I am stuck here. (what if node C has levelID as null)
ELSE n2.levelId
END AS level
這不是得到所需的輸出。
預期:(考慮C和G具有levelId = NULL)
id node level
1 A 1
2 B 2
3 C 1
4 D 4
5 E 5
6 F 6
7 G 1
但是,這是我的實際:(
id node level
1 A 1
2 B 2
3 C 1
4 D 4
5 E 5
6 F 6
7 G null
,感謝您的解決方案 如何修改,如果我想要從多個父母繼承, 我發佈了類似的要求 http://stackoverflow.com/questions/42523140/inherit-properties-of-a-node-which-relationship-to-another-node-to-its柴爾德,在 –