2017-09-05 65 views
-2

實施例在兩個節點之間的關係:創建基於第三節點

節點1(情況):

CASE_ID 
123 

節點2(文獻):

DOCUMENT_ID 
456 
789 
101 

節點3(Case_to_Document ):

CASE_ID DOCUMENT_ID UNIQUE_ID 
123  456   201 
123  789   202 
123  101   203 

我該怎麼辦在這個例子中,在文檔和案例之間是否存在關係?我想要一個代表文檔456,789和101的關係都與Case 123相關(即存在於 - Document-WITHIN-> Case)。

謝謝!

+0

看來你需要開始考慮更多的「圖形」。在圖形DB中,通常甚至不會有'Case_to_Document'節點。通常在您導入數據時(大概是從關係數據庫中)創建關係,而不是事後。 – cybersam

回答

1

在Case節點和每個3個Document節點之間創建唯一關係很容易,但是唯一ID來自哪裏?我假設你的意思是設置這些的關係,但如果他們能與DOCUMENT_ID沿着結構來提供,那麼它應該很容易:

假設這些都是你的查詢參數:

{caseId:123, documents:[{id:456, relId:201}, {id:789, relId:202}, {id:101, relId203}]} 
然後

您的查詢會是這樣的:

MERGE (c:Case{CASE_ID:$caseId}) 
UNWIND $documents as documentData 
MERGE (d:Document{DOCUMENT_ID:documentData.id}) 
MERGE (c)<-[:WITHIN{UNIQUE_ID:documentData.relId}]-(d)