【问题标题】:What's wrong with my neo4j index query in Cypher?我在 Cypher 中的 neo4j 索引查询有什么问题?
【发布时间】:2013-01-04 15:28:54
【问题描述】:

使用 neo4j 社区 1.9 版,我尝试使用小型“Cineast”数据集和“Matrix”数据集进行索引查询。在 webadmin 界面中,Cineasts 集有一个名为 Actor 的索引。

START n=node:Actor("name:*") RETURN n;

这应该返回所有演员的名字,对吧?我没有收到错误消息,但行数为零。

我知道里面有一个叫 Paul Norell 的演员,所以我尝试了这个,但仍然得到相同的结果。

START n=node:Actor(name="Paul Norell") RETURN n;

关于我做错了什么有什么想法吗?如何检查名称键/值对是否已编入索引,甚至哪些在索引中?

【问题讨论】:

  • 我也有同样的问题,总是在指定名称的地方返回 0

标签: indexing neo4j cypher


【解决方案1】:

正如谷歌组中的回答:

Actor.name 未在该数据集中编入索引。

只有Actor.idMovie.id,还有一个电影标题的“搜索”索引。

START n=node:Actor('id:*') RETURN count(*);

START n=node:Movie('id:*') RETURN count(*);
START n=node:Movie(id="601") RETURN n;

START n=node:search('title:*') RETURN count(*);

【讨论】:

    【解决方案2】:
    START n=node:Actor(name="Paul Norell") RETURN n;
    

    name="Paul Norell" 是您在 Actor 中索引的节点的属性。但是当您找到索引索引节点的键和值时,查询会正确。

    例如:当您在 Actor 中使用键和值索引节点 x 时:name="Paul Norell",您的查询是正确的! 注意:索引时的键和值

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-11
      • 1970-01-01
      • 2017-05-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多