Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j Cypher关系类型不返回任何结果_Neo4j_Cypher_Graph Databases - Fatal编程技术网

Neo4j Cypher关系类型不返回任何结果

Neo4j Cypher关系类型不返回任何结果,neo4j,cypher,graph-databases,Neo4j,Cypher,Graph Databases,在尝试在密码查询中定义关系类型时,我得到了一些意外的结果。我的模型由Action节点组成,这些节点通过关系的:引用\与ActionType节点相关。以下是创建查询的示例: START m=node(100), p=node(200) CREATE (a:Action {created:1415534077})-[:OCCURRENCE_OF]->(m), (a)-[:PERFORMED_BY]->(p) 如果我对这些结果运行查询,我会看到数据库中存在与我定义的类型的关

在尝试在密码查询中定义关系类型时,我得到了一些意外的结果。我的模型由Action节点组成,这些节点通过关系的:引用\与ActionType节点相关。以下是创建查询的示例:

START m=node(100), p=node(200)
CREATE (a:Action {created:1415534077})-[:OCCURRENCE_OF]->(m),
       (a)-[:PERFORMED_BY]->(p)
如果我对这些结果运行查询,我会看到数据库中存在与我定义的类型的关系

$ match (a)-[r]->(m) return count(a), type(r);
+-----------------------------+
| count(a) | type(r)          |
+-----------------------------+
| 2412     | "OCCURENCE_OF"   |
+-----------------------------+
但是,如果我尝试使用关系名称运行cypher查询,则该查询将返回0个结果,尽管如果我没有显式声明关系类型,则可以看到这些结果

$ MATCH (m:ActionType)<-[r]-(a:Action) return distinct type( r) ,min(a.created), max(a.created);
+--------------------------------------------------+
| type( r)       | min(a.created) | max(a.created) |
+--------------------------------------------------+
| "OCCURENCE_OF" | 1413718386     | 1416224203     |
+--------------------------------------------------+


$ match (a)-[:OCCURRENCE_OF]->(m) return count(a);
+----------+
| count(a) |
+----------+
| 0        |
+----------+

我尝试过用引号“,”来包装关系,但仍然没有结果。我错过了什么

你能检查一下这段关系的拼写吗?create的出现次数为,但后续查询中的typer显示的出现次数为,最后一次与0结果的匹配是指出现次数为。还有一件事没有意义。运行match a-[r]->m返回counta,typer;为什么在上面的查询中创建了:PERFORMED_BY relationship时,只返回一种关系类型?此外,您可能需要考虑使用匹配,而不是启动,因为我听说开始可能会被弃用。另外,您应该在一个干净的测试数据库上尝试这个方法。您的一些结果表明,您正在运行的查询是在数据库处于不同状态时发生的,而不仅仅是这些查询按顺序运行。@Luane是否需要强制转换关系类型,以便不将其作为字符串应用?也许是引用?我不知道关系类型可以是字符串以外的任何类型@FrobberOfBits我已删除:PERFORMED_BY relationships for berevityNo casting,这是关系类型所需的。[:出现的]是正确的。请重新尝试一个干净的图表,并用新的序列和结果更新您的帖子。我认为这是拼错了,正如Luane所说。