【问题标题】:How to search with cypher 2.0 case insensitive?如何使用 cypher 2.0 不区分大小写进行搜索?
【发布时间】:2015-02-26 13:55:10
【问题描述】:

如何在索引字段上使用 cypher 2.0 / Neo4j 2.1.7 不区分大小写进行搜索?

  • 正则表达式不使用索引WHERE a.X =~ ('(?i)' + b.Y) ...
  • 使用lower() 不使用索引WHERE lower(a.X) = lower(b.Y) ...
  • 为索引添加一个带有小写属性值的额外字段是丑陋的

不使用索引将导致更多他们 2 mio DB Hits。

【问题讨论】:

  • 你试过lucene全文索引吗?我从未尝试将PROFILE 与其中之一一起使用,所以我不能 100% 确定它们会减少 dbhits,但值得研究。 neo4j.com/docs/stable/indexing-create-advanced.html
  • 不,您可以通过配置在 java (neo4j.com/docs/stable/…) 之外创建旧版 lucene 索引,并且 cypher 中的 START 子句可以利用它们。
  • 使用 lucene 索引和密码:stackoverflow.com/questions/22360489/…
  • 我无法为您回答的是,利用这些索引是否会减少 dbhits,但我认为它们会。
  • 是的,同意@FrobberOfBits 通过 REST 使用手动索引。

标签: neo4j cypher


【解决方案1】:

对于使用带有 Neo4j 2.x 的旧索引的全文搜索,这也是不区分大小写的,请查看我的博客文章:

http://jexp.de/blog/2014/03/full-text-indexing-fts-in-neo4j-2-0/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-24
    • 2012-12-20
    • 2010-09-12
    • 2021-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-18
    相关资源
    最近更新 更多