我有一個Neo4J數據庫啓動並運行當前2個標籤:公司和個人。Neo4j通過相同的屬性關聯節點
每個公司節點都有一個名爲old_id的屬性。
每個人節點都有一個名爲company的屬性。
現在我想建立每個公司和每個人之間的關係,其中old_id和公司共享相同的值。
已經嘗試過建議,由:Find Nodes with the same properties in Neo4J和 Find Nodes with the same properties in Neo4J
第一個鏈接我嘗試以下操作:
MATCH (p:Person)
MATCH (c:Company) WHERE p.company = c.old_id
CREATE (p)-[:BELONGS_TO]->(c)
導致在沒有變化,並通過第二個鏈接我試過建議:
START
p=node(*), c=node(*)
WHERE
HAS(p.company) AND HAS(c.old_id) AND p.company = c.old_id
CREATE (p)-[:BELONGS_TO]->(c)
RETURN p, c;
導致運行時間大於36小時。現在,我不得不放棄命令而不知道它是否最終會奏效。因此,我想問問它的理論是否正確,我只是不耐煩(數據集相當大tbh)。或者如果這樣做更有效的方式。
1.什麼是您當前的模式2.請輸出一些公司和人員節點的值,以確保字符串和整數之間不存在不匹配 –
您的第一個查詢應該可以正常工作,尤其是,如果你有':Company(old_id)'的索引 –