3

我想在 neo4j Lucene 索引的单个索引属性中存储多个值,例如

IndexName: profile

property- Education: "Stanford University, Grad School", "Harvard University, MS"
property- Work: "Nokia Siemens Networks", "Motorola" 

搜索也应该适用于所有情况,例如and, or

我们可以通过 Solr 将属性设置为多值属性来做这样的事情。我不确定neo4j + Lucene。

4

1 回答 1

8

您可以将 String[] 数组值添加到索引中(就像节点/关系一样),它将分别索引数组中的每个项目,我认为这将解决您的问题。

  索引 myIndex = graphDb.index().forNodes("profile");
  myIndex.add(myNode, "Education", new String[] {"Stanford University, Grad School", "Harvard University, MS"} );
  myIndex.add(myNode, "Work", new String[] {"Nokia Siemens Networks", "Motorola"} );
  // 查询它(记住引号转义)
  myIndex.query("教育:\"斯坦福大学研究生院\" AND 工作:摩托罗拉");

那应该这样做。

于 2011-11-16T20:46:24.117 回答