簡體   English   中英

密碼學-Neo4j

[英]FOREACH in cypher - neo4j

我對CYPHER QUERY語言非常陌生 ,我正在研究節點之間的關系。 我有一個包含多列和1000行的表格的CSV文件。 我的表格模板是:

cdrType    ANUMBER    BNUMBER    DUARTION    
2          123        456        10 
2          890        456        5 
2          123        666        2 
2          123        709        7 
2          345        789        20 

我已經使用這些命令來創建節點和屬性鍵。

LOAD CSV WITH HEADERS FROM "file:///2.csv" AS ROW
CREATE (:ANUMBER {aNumber:ROW.aNumber} ),
CREATE (:BNUMBER {bNumber:ROW.bNumber} )

現在,我需要在表中的所有行之間創建關系,並且我認為FOREACH循環最適合我。 我創建了此查詢,但它給了我一個錯誤。 查詢是:

MATCH (a:ANUMBER),(b:BNUMBER)
FOREACH(i in RANGE(0, length(ANUMBER)) | 
    CREATE UNIQUE (ANUMBER[i])-[s:CALLED]->(BNUMBER[i]))

錯誤是:

無效的輸入'[':預期為標識符字符,空格,NodeLabel,屬性映射'')或關系模式(第3行,第29列(偏移量:100))“創建唯一(a:ANUMBER [i])- [s:CALLED]->(b:BNUMBER [i]))”

我需要每一行的關系。 就我而言 123-稱為-> 456,890-稱為->456。因此,我需要可視化表示此調用數據,即哪個號碼調用了哪個號碼。 為此,我需要在所有行之間創建關系。

有人知道如何解決這個問題嗎?

關於什么 :

LOAD CSV WITH HEADERS FROM "file:///2.csv" AS ROW
CREATE (a:ANUMBER {aNumber:ROW.aNumber} )
CREATE (b:BNUMBER {bNumber:ROW.bNumber} )
MERGE (a)-[:CALLED]->(b);

沒有比這更復雜的imo

希望這可以幫助 !

問候,湯姆

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM