我用neo4j构建了一个图表。当我使用以下cypher查询进行搜索时,它没有产生结果。
MATCH (n:node)
where n.prop='pro1'
RETURN n
LIMIT 25
我确定n.prop='pro1'
存在。查询有效。
MATCH (n:node)
where exists(n.prop)
RETURN n
LIMIT 25
为什么第二个查询返回结果但第一个不返回?
答案 0 :(得分:0)
您可能需要进行一些健全性检查,在这些情况下,通常的罪魁祸首是错别字,案例不匹配或类似情况。听起来你已经经历过这些了,但回去验证每一个都没有坏处。
但如果按照你说的那样,你的比赛中的标签是正确的,那么道具键的大小写和拼写是正确的,那么它必须与属性本身的值有关。
要寻找的一些事情......
如果一切看起来还不错,请在neo4j中再次测试...您可能需要尝试在STARTS WITH
子句中使用WHERE
。
作为最后的手段,尝试使用:MERGE
做一个带有prop的节点,你可以使用ON CREATE
在新节点上设置一些额外的标志,如果它被创建了(正如一个完整性检查,因此您将有一些东西可以帮助您区分现有节点和将要创建的任何新节点。)