密码中的 FOREACH - neo4j
FOREACH in cypher - neo4j
我是 CYPHER QUERY LANGUAGE 的新手,我正在研究节点之间的关系。
我有一个 table 的 CSV 文件,其中包含多列和 1000 行。
我的 table 模板是:
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} )
现在我需要在 table 中的所有行之间创建关系,我认为 FOREACH 循环最适合我的情况。我创建了这个查询,但它给了我一个错误。查询是:
MATCH (a:ANUMBER),(b:BNUMBER)
FOREACH(i in RANGE(0, length(ANUMBER)) |
CREATE UNIQUE (ANUMBER[i])-[s:CALLED]->(BNUMBER[i]))
错误是:
Invalid input '[': expected an identifier character, whitespace,
NodeLabel, a property map, ')' or a relationship pattern (line 3,
column 29 (offset: 100)) " CREATE UNIQUE
(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);
并不比i.m.o复杂。
希望对您有所帮助!
此致,
汤姆
我是 CYPHER QUERY LANGUAGE 的新手,我正在研究节点之间的关系。 我有一个 table 的 CSV 文件,其中包含多列和 1000 行。 我的 table 模板是:
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} )
现在我需要在 table 中的所有行之间创建关系,我认为 FOREACH 循环最适合我的情况。我创建了这个查询,但它给了我一个错误。查询是:
MATCH (a:ANUMBER),(b:BNUMBER)
FOREACH(i in RANGE(0, length(ANUMBER)) |
CREATE UNIQUE (ANUMBER[i])-[s:CALLED]->(BNUMBER[i]))
错误是:
Invalid input '[': expected an identifier character, whitespace, NodeLabel, a property map, ')' or a relationship pattern (line 3, column 29 (offset: 100)) " CREATE UNIQUE (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);
并不比i.m.o复杂。
希望对您有所帮助!
此致, 汤姆