我开始学习Neo4j Cypher。我正在使用Neo4j示例电影图数据库。
以下是我编写的Cypher,并期望Cypher返回结果1964但返回NULL值。
请你告诉我。
MATCH(tom:Person)tom.Name =“Tom Hanks”返回tom.born; 通过Neo4j教程我发现关系有属性。当我运行下面的查询它也导致NULL。在哪里,我期待关系“ACTED_IN”具有proprty角色。所以它应该返回值“角色”。
match(:Person {name:'Keanu Reeves'}) - [rel] - >(M)RETURN M.title,rel.property;
提前致谢。
此致 Faizan
答案 0 :(得分:2)
属性区分大小写。当属性为Name
时,您正在使用name
。尝试:
MATCH (tom:Person) WHERE tom.name = "Tom Hanks" RETURN tom.born;
对于其他查询,property
不是:ACTED_IN
关系中的属性。它被称为roles
。尝试:
MATCH (:Person {name:'Keanu Reeves'})-[rel]->(M)
RETURN M.title, rel.roles;
如果您想要该关系的属性键:
MATCH (:Person {name:'Keanu Reeves'})-[rel]->(M)
RETURN M.title, KEYS(rel);