Neo4j图形数据库关系
我用Neo4j制作了一个关于爱尔兰2016年选举的图表数据库。我已经为每个候选人、选区和政党输入了节点Neo4j图形数据库关系,neo4j,cypher,graph-theory,Neo4j,Cypher,Graph Theory,我用Neo4j制作了一个关于爱尔兰2016年选举的图表数据库。我已经为每个候选人、选区和政党输入了节点 CREATE(n:Candidate{name:'Gerry Adams', gender:'Male' ,constituency:'Louth', party:'Sinn Fein'}); CREATE(n:Party{party:'Sinn Fein'}); CREATE(n:Constituency{constituency:'Louth'}); 所有的节点都在数据库中,我试图让
CREATE(n:Candidate{name:'Gerry Adams', gender:'Male' ,constituency:'Louth', party:'Sinn Fein'});
CREATE(n:Party{party:'Sinn Fein'});
CREATE(n:Constituency{constituency:'Louth'});
所有的节点都在数据库中,我试图让它们连接起来,但我遇到了问题。这就是我试图添加的关系:
match (n{constituency:"Louth"}), (c{constituency:"Louth"}) create (n)-[r:FROM]->(c) return n,c;
我哪里出错了?您的问题出现了,因为您没有使用带有标识符的标签。没有标签,每个n和c都与Louth的选区匹配 我会先匹配选区,然后为每个选区匹配该选区的候选人。然后为每个匹配创建关系。这样,每个对象只匹配一次 像这样的
match (constituency:Constituency {constituency:"Louth"})
with constituency
match (candidate:Candidate {constituency:"Louth"})
create (candidate)-[r:FROM]->(constituency)
return constituency,candidate;
出现问题的原因是您没有将标签与标识符一起使用。没有标签,每个n和c都与Louth的选区匹配 我会先匹配选区,然后为每个选区匹配该选区的候选人。然后为每个匹配创建关系。这样,每个对象只匹配一次 像这样的
match (constituency:Constituency {constituency:"Louth"})
with constituency
match (candidate:Candidate {constituency:"Louth"})
create (candidate)-[r:FROM]->(constituency)
return constituency,candidate;
您好,非常感谢您回复我,我不得不再次重做整个数据库,这次我使用了:
CREATE(n:候选人{姓名:'Gerry Adams',性别:'Male,选区:'Louth',政党:'sinfein'})代码>CREATE(p:Party{name:'sinfein'})代码>创建(c:选区{名称:'Louth'})代码>match(姓名:选区{name:“Louth”})与姓名匹配(选区:候选人{section:“Louth”})创建(选区)-[r:FROM]->(姓名)返回姓名,选区代码>您好,非常感谢您回复我,我不得不再次重做整个数据库,这次我使用了:创建(n:候选人{姓名:'Gerry Adams',性别:'Male,选区:'Louth',政党:'Sinn Fein'})代码>CREATE(p:Party{name:'sinfein'})代码>创建(c:选区{名称:'Louth'})代码>match(姓名:选区{name:“Louth”})与姓名匹配(选区:候选人{section:“Louth”})创建(选区)-[r:FROM]->(姓名)返回姓名,选区代码>